Zambia

Send funds to Zambian bank accounts.

Prerequisites

  1. Complete your KYC and ensure that your account is approved for transactions.
  2. Whitelist your server IP addresses to prevent security errors.
  3. Make sure your balance has enough funds. If needed, use an alternate balance; see the list of supported currencies for ZMW transfers.

Payout Flow

Here are the steps to send money to a Zambian bank account.

  1. Collect the beneficiary's details such as the beneficiary's name, bank, and account number. See the expected data requirements below:
{
  "reference": "", // merchant_input
  "currency": "", // merchant_input
  "amount": 0.0, // merchant_input
  "callback_url": "", // merchant_input
  "narration": "", // merchant_input
  "debit_currency": "", // merchant_input
  "debit_subaccount": "", // merchant_input
  "account_bank": "", // beneficiary_information
  "account_number": "", // beneficiary_information
  "beneficiary_name": "" // beneficiary_information
}
  1. Fetch the beneficiary's bank code using the bank and bank branches endpoints to get the account_bank.

  2. Use the transfer endpoint to initiate your transfer with the required data. You can include the debit_currency parameter in your request to debit from a different currency balance.

{
	"account_bank": "542",
	"account_number": "0012030001",
	"amount": 500,
	"narration": "SAMPLE ZMW TRANSFER",
	"currency": "ZMW",
	"destination_branch_code": "ZM210000",
	"beneficiary_name": "NWABALI S."
}

You'll get a response similar to this:

{
	"status": "success",
	"message": "Transfer Queued Successfully",
	"data": {
		"id": 127831,
		"account_number": "0031625807099",
		"bank_code": "ZM210000",
		"full_name": "Flutterwave Developers",
		"created_at": "2020-06-25T11:24:01.000Z",
		"currency": "ZMW",
		"amount": 50,
		"fee": 20,
		"status": "NEW",
		"reference": "new-ZMW-test-transfer2",
		"meta": null,
		"narration": "SAMPLE ZMW TRANSFER",
		"complete_message": "",
		"requires_approval": 0,
		"is_approved": 1,
		"bank_name": "AB BANK ZAMBIA LIMITED MATERO"
	}
}
  1. Verify your transfer status; there are many ways to do this:

    • You can get the transfer status using the transfer status endpoint.
    • If webhooks are enabled on your dashboard, check them to confirm the transfer status.
    • For transfers with callback_id, we'll send the transfer details with their status using the specified URL.
{
  "event": "transfer.completed",
  "event.type": "Transfer",
  "data": {
    "id": 127831,
		"account_number": "0031625807099",
		"bank_code": "ZM210000",
		"full_name": "Flutterwave Developers",
		"created_at": "2020-06-25T11:24:01.000Z",
		"currency": "ZMW",
		"amount": 50,
		"fee": 20,
		"status": "NEW",
		"reference": "new-ZMW-test-transfer2",
		"meta": null,
		"narration": "SAMPLE ZMW TRANSFER",
		"complete_message": "",
		"requires_approval": 0,
		"is_approved": 1,
		"bank_name": "AB BANK ZAMBIA LIMITED MATERO",
    "complete_message": "Successful",
  }
}
{
    "status": "success",
    "message": "Transfer fetched",
     "data":  {
      "id": 127831,
      "account_number": "0031625807099",
      "bank_code": "11125380",
      "full_name": "Flutterwave Developers",
      "created_at": "2020-06-25T11:24:01.000Z",
      "currency": "UGX",
      "amount": 50,
      "fee": 20,
      "status": "NEW",
      "reference": "new-UGX-test-transfer2",
      "meta": null,
      "narration": "SAMPLE UGX TRANSFER",
      "complete_message": "",
      "requires_approval": 0,
      "is_approved": 1,
      "bank_name": "FINANCE TRUST BANK LTD"
      "complete_message": "Successful",
    }
}

Testing Transfers

Check our testing guide for details on testing transfers.