Collect payments with your paybill, without API keys
PAYBILL sends a real M-Pesa STK push to the payer, using the platform’s
Daraja credentials rather than your own. You supply only your paybill number —
no Daraja onboarding required.
Available to ISPs in Kenya (KE).
This is not a “show the customer instructions” method. The payer receives an
STK prompt and enters their M-Pesa PIN, exactly as with
Safaricom M-Pesa. The difference is
where the Daraja API keys come from: with
SAFARICOM they are yours, here
they are the platform’s, so you can start collecting before Daraja onboarding
is finished.Before you start
- Have an active M-Pesa paybill registered to your business. It must be a Safaricom paybill — not a bank paybill. To collect into a bank account, use Bank instead.
- Link a MikroTik router and bring it online. This gateway will not send a payment prompt otherwise — see the warning below.
Configure the gateway
1
Open Settings → Payments → Paybill - Without API keys
Select the method from the payment marketplace.
2
Enter your paybill number
Paybill number (required) is digits only, at least 4 and at most 20
characters. It is shown to subscribers and is the account the money lands in.
3
Save and switch
The paybill is the only field that gates the switch. Switching gateways may
require an OTP confirmation.
4
Run a controlled test payment
Pay a small amount from the captive portal, and confirm the prompt shows
your paybill and that the money arrives in it.
Credentials
Callback URLs
None. The callback address is sent with every payment request, so there is nothing to register with Safaricom.What the payer must provide
A Safaricom phone number, which receives the STK prompt. The account reference is filled in for the payer.How a payment completes
1
Request
Centipid Billing raises the STK push against your paybill using the
platform’s Daraja app, as a
CustomerPayBillOnline transaction.2
Authorization
The payer enters their M-Pesa PIN.
3
Confirmation
Safaricom posts the result to the platform callback, which records the
payment and applies the subscriber’s package asynchronously.
Payments typed in by hand
Not every payment on this method starts as an STK prompt. An invoice can offer pay-by-hand instructions, and a TV screen shows a number the customer types into M-Pesa themselves. On this method that number is the Centipid paybill, not yours — money paid that way is collected by the platform against the subscriber’s account reference and remitted to you. Prove where money lands, in both flows, with a controlled test payment before you move subscribers onto this method.Troubleshooting
To hold your own Daraja keys instead, see
Safaricom M-Pesa. For every gateway’s
fields in one place, see the
credential reference.
