POST/v1/payouts/request

Request withdrawal

Requests a withdrawal from your Watenga balance to bank or agent cash.

Authentication

Secret Key — send Authorization: Bearer YOUR_KEY header.

Feature required

Requires payouts enabled on your API app. Requires 2FA (X-TOTP-Code header) if enrolled.

Request parameters

ParameterTypeRequiredDescription
amountstringYesWithdrawal amount ("10.00" format)
currencystringYesUSD or ZWG
methodstringYesbank_transfer | agent_cash | mobile_money
bank_account_idstringNoSaved bank account UUID; fills bank/mobile fields automatically
bank_namestringNoRequired for bank_transfer when bank_account_id is not given
bank_account_numberstringNoRequired for bank_transfer when bank_account_id is not given
bank_account_namestringNoRequired for bank_transfer when bank_account_id is not given
bank_branch_codestringNoRequired for non-NMB bank transfers
mobile_money_providerstringNoecocash | onemoney | innbucks (required for mobile_money)
mobile_money_numberstringNoRecipient wallet number (required for mobile_money)
For bank_transfer, send either bank_account_id or the bank_name/bank_account_number/bank_account_name fields. For mobile_money, send mobile_money_provider and mobile_money_number.

Response fields

FieldTypeDescription
payout_idstringPayout request ID
methodstringbank_transfer | agent_cash | mobile_money
amountstringGross withdrawal amount
feestringPayout fee
net_amountstringAmount after fee
currencystringUSD or ZWG
statusstringprocessing on success
expected_settlementstringEstimated settlement window
agent_otpstringCash-out OTP (agent_cash only)

Code examples

bash
curl -X POST https://api.watenga.africa/v1/payouts/request \
  -H "Authorization: Bearer sk_test_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -H "X-TOTP-Code: 123456" \
  -d '{
        "amount": "100.00",
        "currency": "USD",
        "method": "bank",
        "destination_id": "ba_01"
      }'

Response example

json
{
  "success": true,
  "data": {
    "payout_id": "po_01HQ",
    "method": "bank_transfer",
    "amount": "100.00",
    "fee": "1.50",
    "net_amount": "98.50",
    "currency": "USD",
    "status": "processing",
    "expected_settlement": "1-2 business days"
  }
}