External Transfers

How to disburse from the (working) wallet

Using the IntaSend Send Money , you are able to disburse payment from wallet by specifying its wallet_id.

📘

Can Disburse Check

This API works only for wallets created with can_disbuse option set to true

Example: How to initiate Withdrawal from Wallet to M-Pesa

The following is an example (in Python) of withdrawing funds from a specific wallet by specifying a wallet_id as one of the fields when initiating the M-Pesa B2C API.

The same can be implemented in other language by simply parsing a wallet_id field in the request payload. See the M-Pesa B2C for more details.

from intasend import APIService

service = APIService(token="token" private_key=private_key, test=True)

transactions = [{'name': 'Awesome Customer 1', 'account': 25472.., 'amount': 10},
                {'name': 'Awesome Customer 2', 'account': 25472.., 'amount': 10000}]

response = service.transfer.mpesa(wallet_id='<PAYING-OUT-WALLET-ID>', device_id='<DEVICE-ID>', currency='KES', transactions=transactions)
print(response)
use IntaSend\IntaSendPHP\Transfer;

$transactions = [
            ['account'=>'254...','amount'=>'20'],
            ['account'=>'254...','amount'=>'15']
        ];

$response=$transfer->mpesa("KES", $transactions=$transactions, $callback_url=null,  $wallet_id='<wallet_id>');
print_r($response);
const IntaSend = require('intasend-node');

const intasend = new IntaSend(/*...Authenticate*/)

let payouts = intasend.payouts();

payouts
    .mpesa({
      currency: 'KES',
      transactions: [{
        name: 'Joe Doe',
        account: '254708374149',
        amount: '1000',
        narrative: 'Reason for payment'
      }],
      wallet_id:"<wallet_id>"
    })
    .then((resp) => {
      console.log(`Payouts response:`, resp);
      // Approve payouts method can be called here if you would
      // like to auto-approve immediately
    })
    .catch((err) => {
      console.error(`Payouts error:`, err);
    });

Like all other Send Money APIs , the above request is also a two step. Please go through the send money examples on full implementation for M-Pesa B2C, M-Pesa B2B, Bank Payouts and IntaSend P2P.

Check the Transaction Status status API for details on transaction codes and meaning.