Malawi 🇲🇼

Send funds to Malawian bank accounts.

ℹ️

Feature Request

Transfers to Malawian bank accounts are not available by default. To enable this feature, submit a request.

Prerequisites

  1. Complete your KYC verification and confirm that your account is approved for transactions.
  2. Whitelist your server IP address to prevent security errors.
  3. Fund your MWK balance. You can do this by:
    • Directly funding via collections, this method allows funding up to the equivalent of $1,000.
    • Indirect funding via FX conversion from a different currency balance (i.e., wallet-to-wallet transfers).

Payment Flow

Here are the steps to send money to Malawian bank accounts.

  1. Collect the customer's information:
    1. Beneficiary information: account_bank, account_number, beneficiary_name, and destination_branch_code.
    2. Transfer details: reference, amount and currency.
  2. Fetch the beneficiary's bank code using the bank and bank branches endpoints to get the account_bank.
  3. Send your transfer request to the create transfer endpoint to initiate the transfer.
{
    "account_bank": "97964560",
    "account_number": "0690000040",
    "amount": 100000,
    "narration": "SAMPLE MWK TRANSFER", // Optional
    "currency": "MWK",
    "debit_currency": "NGN", // Optional
    "beneficiary_name": "NWABALI S",
    "destination_branch_code": "18120510PC"
}

You'll get a response like this:

{
    "status": "success",
    "message": "Transfer Queued Successfully",
    "data": {
        "id": 641166,
        "account_number": "0690000040",
        "bank_code": "97964560",
        "full_name": "NWABALI S",
        "created_at": "2024-07-29T12:16:49.000Z",
        "currency": "MWK",
        "debit_currency": "NGN",
        "amount": 100000,
        "fee": 45,
        "status": "NEW",
        "reference": "0a06c4086449428c",
        "meta": null,
        "narration": "SAMPLE MWK TRANSFER",
        "complete_message": "",
        "requires_approval": 0,
        "is_approved": 1,
        "bank_name": "First Discount House Limited"
    }
}

  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.type": "Transfer",
  "transfer": {
    "id": 641173,
    "account_number": "0690000040",
    "bank_code": "97964560",
    "fullname": "NWABALI S",
    "date_created": "2024-07-29T13:00:30.000Z",
    "currency": "MWK",
    "debit_currency": "NGN",
    "amount": 100000,
    "fee": 45,
    "status": "SUCCESSFUL",
    "reference": "47b4b1f71065196a",
    "meta": null,
    "narration": "SAMPLE MWK TRANSFER",
    "approver": null,
    "complete_message": "Successful",
    "requires_approval": 0,
    "is_approved": 1,
    "bank_name": "First Discount House Limited"
  }
}

Testing Transfers

Check our testing guide for details on testing transfers.