Skip to main content
Create a bank transfer to send money from your Pasteaza balance to a recipient’s bank account.
Resolve the recipient account first, then use the resolved account details when creating the transfer. Add an Idempotency-Key to avoid duplicate payouts.

Endpoint

POST /v1/disbursements/bank-transfer

Headers

Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxx
Content-Type: application/json
Idempotency-Key: 8f2b9d4a-3c4d-4b62-96c7-02b2c4f31388

Request body

FieldTypeRequiredDescription
amountintegerYesAmount to send in kobo.
currencystringYesCurrency code. Defaults to NGN.
source_account_numberstringNoMerchant account to debit. If omitted, Pasteaza uses the primary settlement account.
account_numberstringYesRecipient bank account number.
bank_codestringYesRecipient bank code.
account_namestringNoResolved recipient account name.
narrationstringNoTransfer narration shown to the recipient.
merchant_referencestringNoYour internal transfer reference.
metadataobjectNoAdditional merchant data.

Example request

curl https://api.oyapasteaza.com/v1/disbursements/bank-transfer \
  -X POST \
  -H "Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: 8f2b9d4a-3c4d-4b62-96c7-02b2c4f31388" \
  -d '{
    "amount": 500000,
    "currency": "NGN",
    "source_account_number": "1012345678",
    "account_number": "1234567890",
    "bank_code": "044",
    "account_name": "JOHN DOE",
    "narration": "Vendor payout",
    "merchant_reference": "PAYOUT_12345"
  }'

Successful response

{
  "status": true,
  "message": "Transfer created successfully.",
  "data": {
    "reference": "pst_trf_01JABCXYZ",
    "merchant_reference": "PAYOUT_12345",
    "amount": 500000,
    "currency": "NGN",
    "status": "processing",
    "recipient": {
      "account_number": "1234567890",
      "account_name": "JOHN DOE",
      "bank": {
        "code": "044",
        "name": "Access Bank Plc"
      }
    },
    "created_at": "2026-06-11T14:30:00Z"
  }
}

Transfer flow

1

Resolve the recipient account

Confirm the recipient account using the resolve account endpoint before you create the transfer.
2

Submit the transfer request

Send the bank transfer request with the amount, bank code, account number, and idempotency key.
3

Track the transfer status

Treat the first response as a processing update and confirm the final outcome with the verify transfer status endpoint.
4

Store the reference

Save the transfer reference in your database so you can reconcile later.

Notes

  • Always resolve the account before creating a transfer.
  • Use an Idempotency-Key to prevent duplicate transfers.
  • Use source_account_number when you want to debit a non-primary settlement account.
  • If source_account_number is omitted, Pasteaza uses the merchant’s primary settlement account.
  • A created transfer may return processing first.
  • Check the final status with the verify transfer status endpoint.
  • Keep the transfer reference and merchant reference in your records.

Resolve account

Confirm the recipient account before sending money.

Verify transfer status

Check the final status of a transfer.