Skip to main content

Documentation Index

Fetch the complete documentation index at: https://developers.kulmipay.com/llms.txt

Use this file to discover all available pages before exploring further.

KulmiPay wallets hold the funds your business collects and the balances you use for Send Money. Settlement wallets are created automatically for supported currencies, while working wallets let you separate money for specific operational uses such as payroll, refunds, or supplier payments.

Wallet types

TypeDescription
SETTLEMENTAutomatically managed wallets that receive collected funds for a currency.
WORKINGWallets you create to separate balances for a specific purpose.

Supported currencies

KulmiPay wallets support KES, USD, EUR, and GBP. M-Pesa and PesaLink collections settle in KES. Send Money currently uses KES wallets.

What you can do

Retrieve Wallets

List all wallets or retrieve one wallet by ID.

Create Wallets

Create working wallets for operational balances.

Wallet Transactions

Retrieve wallet statements and filter transaction history.

Fund Wallet

Route M-Pesa or PesaLink collections into a specific wallet.

Internal Transfers

Move funds between wallets on your KulmiPay account.

PHP SDK example

<?php

require_once __DIR__ . "/vendor/autoload.php";

use KulmiPay\KulmiPayPHP\Wallet;

$wallet = new Wallet();
$wallet->init([
    "token" => "ISSecretKey_live_xxxxxxxxxxxxxxxx",
]);

$wallets = $wallet->retrieve();
$created = $wallet->create("KES", "Payroll Wallet", true);
$transactions = $wallet->transactions($created->wallet_id);

$transfer = $wallet->intra_transfer(
    "origin-wallet-id",
    "destination-wallet-id",
    "1000.00",
    "Move funds to payroll wallet"
);
External wallet transfers are not documented here because there is no matching public wallet API route in the current KulmiPay backend. Use the Send Money APIs for payouts to M-Pesa, M-Pesa B2B, PesaLink bank accounts, or KulmiPay P2P.