Solutions / Developer API
Build deposits, withdrawals, and escrow into your own systems.
A signed REST API covering the same capabilities the dashboard gives a human — deposits, withdrawals, escrow, and webhook delivery for events as they happen.
HMAC-signed requests
Every request is signed with your own API key's secret — never sent in plaintext, and rejected outright if the signature doesn't match or the timestamp has expired.
Replay-resistant
A signed request can't be captured and re-sent later — each one carries a timestamp and nonce this platform tracks, so an identical replayed request is rejected the second time.
Signed webhooks
Register a callback URL and receive signed delivery notifications for events (deposits, withdrawal status changes) as they happen — react to events instead of polling for them.
The same engine as the dashboard
API requests run through the identical fee calculation, confirmation handling, and ledger accounting the dashboard itself uses — not a separate, less-tested code path.
A taste of the surface
- POST /api/v1/wallets/:id/deposits/stk — initiate an M-Pesa STK deposit
- GET /api/v1/wallets/:id/balance — read a wallet's current balances
- POST /api/v1/wallets/:id/withdrawals — initiate a withdrawal
- POST /api/v1/withdrawals/:id/confirm-otp — confirm with a one-time code
- POST /api/v1/wallets/:id/escrows — fund a new escrow
- POST /api/v1/escrows/:id/confirm — confirm your side of an escrow
- POST /api/v1/webhooks — register a webhook endpoint
This is a preview, not the full reference — complete request/response documentation is coming as part of this platform's dedicated API docs.