Skip to content
Documentation

Payments

M-Pesa, cash, and the business wallet

A plain-language guide to prepayment, cash bookings, commission, wallet deposits and withdrawals, and safe payment checks.

8 minute readReviewed August 2026Fleetify product documentation

01

What happens during an STK Push

STK Push sends an M-Pesa payment prompt to the phone number entered at checkout.

  1. 1Payment starts

    The customer chooses M-Pesa and enters the phone number that should receive the prompt.

  2. 2Customer approves

    M-Pesa shows the amount on the customer's phone. The customer checks it and enters the M-Pesa PIN on that phone.

  3. 3Safaricom returns a result

    Safaricom sends the result directly to Fleetify. The customer does not need to type an M-Pesa receipt.

  4. 4Fleetify verifies it

    Fleetify checks the request, amount, phone, and unique receipt before confirming the booking and updating the rental company's wallet.

Be careful

Fleetify never needs the customer's M-Pesa PIN. Do not ask for it and do not enter it on a website form.

02

Payment settings in Fleetify

Fleetify offers two simple checkout choices: cash at vehicle collection and M-Pesa prepayment.

  • Fleetify manages the OpenRails Paybill connection. Rental companies do not enter API keys, Paybill details, or webhook secrets.
  • With M-Pesa prepayment, the customer pays the full checkout amount through an STK prompt before the booking is confirmed.
  • With cash, the rental company first checks the vehicle and accepts the request. The customer then pays at collection.
  • The default wallet phone is only a shortcut for deposits and withdrawals. It can be changed for each request.
  • At least one of the two checkout choices must remain enabled.

Be careful

Do not ask a customer to type a receipt as proof of payment. Fleetify confirms M-Pesa automatically from Safaricom's result.

03

How the business wallet works

  • M-Pesa booking: the customer's payment reaches the OpenRails Paybill. The rental amount after Fleetify commission is credited to the company wallet.
  • Cash booking: the rental company receives cash directly. Fleetify commission is charged to the wallet when the company accepts the request.
  • A cash commission may take the wallet below zero. The company can deposit by STK Push to clear it.
  • A positive available balance can be withdrawn to an approved Safaricom number. The balance is reserved before the payout starts, so it cannot be withdrawn twice.
  • Every wallet line is permanent and shows the balance immediately after that entry.

Good to know

Only the business owner or an administrator can move wallet funds or change payment settings.

04

How to check a payment safely

  1. 1Match the record

    Use the booking reference, amount, phone's last four digits, time, and M-Pesa receipt to find the correct payment.

  2. 2Read the status

    Paid means the verified result was recorded. Pending means Fleetify is waiting. Failed means the attempt did not complete. Being checked means nobody should pay again until support verifies it.

  3. 3Check the wallet

    For a successful M-Pesa booking, open Wallet and Payments and find the matching net booking credit.

  4. 4Escalate a mismatch

    Send support the booking ID, transaction reference, amount, approximate time, and visible status. Leave out PINs and secrets.

Good to know

M-Pesa bookings cannot be marked paid manually. Cash can be recorded as collected only after the booking has been accepted.