Create Wallets

How to create IntaSend wallets

These APIs will help you to create and manage WORKING wallets. By default, all IntaSend accounts have SETTLEMENT accounts which act as main accounts. WORKING wallets are basically sub-accounts that you can use to isolate your customers'/merchants' funds. Each customer can have their own wallets within IntaSend that you will manage on their behalf.

Wallet Fields

The following fields are required when creating a new wallet

wallet_typeProvide the value: WORKING for this field
currencyAvailable options are: KES, USD, EUR, and GBP
labelYour wallet reference identifier label
can_disburseIf set to true, the wallet can be used to send money/withdraw to mobile money wallet with the API

Create a Wallet Request

Below are examples on how to create a new wallet.

When using the Client Libraries (SDKs) the wallet_type is automatically handled for you.

from intasend import APIService

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

response = service.wallets.create(currency="KES", label="MY-WALLET-ID", can_disburse=True)
use IntaSend\IntaSendPHP\Wallet;

$wallet = new Wallet();
$response = $wallet->create($currency='KES', $label='MY-WALLET-ID', $can_disburse=true);
const IntaSend = require('intasend-node');

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

let wallets = intasend.wallets();
    label: 'NodeJS-SDK-TEST',
    wallet_type: 'WORKING',
    currency: 'KES',
  	can_disburse: true
  .then((resp) => {
    console.log(`Response: ${JSON.stringify(resp)}`);
  .catch((err) => {

Create a Wallet Response

On successful request, the following results will be returned. In your application, you might want to save the newly generated wallet_id for use during Fund Wallet, Internal Transfers, and Retrieve Wallet requests.

    'wallet_id': 'AWR19L',
    'currency': 'KES',
    'wallet_type': 'WORKING',
    'label': 'MY-WALLET-ID',
    'can_disburse': 'true',
    'current_balance': '0.00',
    'available_balance': '0.00',
    'updated_at': '2021-05-31T21:51:05.577470+03:00'