Feature: Multiple secondary Bank and MPESA accounts support for Business API payments

MPESA and Bank secondary accounts API

Tuma Payment Gateway allows users to manage payments for multiple business profiles under one account but, that’s not enough. We now support up to three secondary payment accounts per business profile.

Ideal use cases

For instance, a hotel that has a restaurant, bar and, accomodation accounts managed separately. Or a distributor who collects payments from each region in seperate bank or MPESA accounts.

Think of a supermarket chain with multiple branches but each branch has its own different bank acocunt or MPESA till number.

A backup account in case bank A is experiencing a downtime, your business operations need to continue uninterrupted. Tuma automatically switches to the next available backup account for real-time fund settlement.

In these cases, you don’t need to create standalone business profiles, when the additional accounts can be added as secondary accounts and Tuma will handle the routing and rest of billing workflow.

Supported Payment Methods

This works with:

  • M-PESA Paybill number / Buy Goods Till Number
  • Airtel Money
  • Equity Bank
  • Kenya Commercial Bank (KCB)
  • Cooperative Bank of Kenya
  • Diamond Trust Bank
  • NCBA
  • Loop
  • Family Bank
  • Stanbic Bank
  • I&M Bank
  • KWFT
  • Faulu Bank
  • Access Bank
  • Standard Chartered Bank
  • ABSA
  • SBM Bank Kenya
  • National Bank
  • Sidian Bank
  • And more…

Adding secondary accounts

1) login to your Tuma merchant account: https://merchant.tuma.co.ke/

2) Navigate to Businesses, then edit. Scroll to “add secondary Bank Account”

Tuma secondary bank account

3) Fill the secondary bank account details. Bank/MPESA business, account and alias/label.

Tuma add secondary account API

4) Initiating payment prompt for secondary account

Use the same API key, but add the optional “account” parameter in the request body. Our API expects the account label/alias, not the actual account number. When empty, null or excluded, Tuma picks the primary account by default.

POST https://api.tuma.co.ke/payment/stk-push
Authorization: Bearer your-jwt-token
Content-Type: application/json

{
  "amount": 100.00,
  "phone": "254712345678",
  "account": "Welfare",
  "callback_url": "https://your-app.com/callback",
  "description": "Payment for order #123"
}

Success Response:
{
    "success": true,
    "message": "Payment request sent successfully. Complete payment on your phone.",
    "data": {
        "merchant_request_id": "2dfd-472d-9bbd-df490884098d625543",
        "checkout_request_id": "ws_CO_04032026165157497729598795",
        "customer_message": "Success. Request accepted for processing",
        "account_used": "Welfare"
    }
}

//fail response model
{
    "success": false,
    "message": "Secondary account with label \"test\" not found for this business. Please check the account label and try again."
}

5) Callback handling

Your callback URL provided in STK PUSH request will receive payment status updates as shown below.

POST https://your-app.com/callback
Content-Type: application/json

//Response model for success, result_code=0, else it's a fail

{
  "status": "completed",
  "merchant_request_id": "a5ea-442f-a424-f94158490a468325",
  "checkout_request_id": "ws_CO_23022026142735114729500095",
  "result_code": 0,
  "result_desc": "The service request is processed successfully.",
  "timestamp": "2026-02-23 14:27:46",
  "mpesa_receipt_number": "UBNGT7QNYB",
  "amount": 10
}

//fail response model e.g
{
  "status": "failed",
  "merchant_request_id": "0e96-4a74-ab9d-ae3b6a9c0e933677",
  "checkout_request_id": "ws_CO_28022026175239080729590095",
  "result_code": 2001,
  "result_desc": "The initiator information is invalid.",
  "timestamp": "2026-02-28 17:52:51",
  "failure_reason": "Invalid M-Pesa PIN entered"
}

Fund settlement

Once a customer authorizes payment prompt, Tuma routes and credits the funds directly to the specified secondary account in real-time.

Switching Primary account

You can easily toggle to switch between accounts to make any account primary.

Toggle or switch primary account Tuma API

Tuma is a powerful payment gateway that automates billing workflows by connecting invoices, apps and sales with M-PESA and all banks in Kenya.