Till number (without API keys)
Collect payments with your till, without API keys
TILL_NUMBER sends a real M-Pesa Buy Goods STK push to the payer, using the
platform’s Daraja credentials rather than your own. You supply only your till
number; the money settles into that till.
Available to ISPs in Kenya (KE).
Before you start
- Have an active M-Pesa Buy Goods till registered to your business.
Configure the gateway
Open Settings → Payments → Till Number - Without API keys
Select the method from the payment marketplace.
Enter your till number
Till number (required, maximum 20 characters) is the M-Pesa till shown to subscribers and the account the money lands in. No Daraja keys are requested.
Save and switch
The till number is the only field that gates the switch. Switching gateways may require an OTP confirmation.
Run a controlled test payment
Pay a small amount from the captive portal, and confirm the money arrives in the till.
Credentials
| Field | Required | Notes |
|---|---|---|
| Till number | Yes | Maximum 20 characters. Your own Buy Goods till. |
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 Buy Goods STK prompt.
How a payment completes
Request
Centipid Billing raises a
CustomerBuyGoodsOnlineSTK push against your till, using the platform’s Daraja app.Authorization
The payer enters their M-Pesa PIN.
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
A till has no account-number field, so there is no pay-by-hand instruction for an invoice on this method — a customer paying by hand cannot tell you which subscriber the money is for. TV payments are the exception: the TV screen shows the Centipid paybill, and that money is collected by the platform against the TV code and remitted to you.
Prove where money lands with a controlled test payment before moving subscribers onto this method.
Troubleshooting
| Symptom | What it means | What to do |
|---|---|---|
| “Unable to process payment. Please try again later.” | The STK push failed or Safaricom was unreachable. | Confirm the till is active and accepts Buy Goods payments, then retry. If it persists, raise it with support — the platform credentials are not yours to correct. |
| The prompt names an unexpected till | The saved till number is wrong. | Correct it in Settings → Payments. |
| Payer paid, service not applied | The callback did not arrive or did not match a checkout. | See Payment troubleshooting. |
To hold your own Daraja keys instead, see Safaricom M-Pesa. For every gateway’s fields in one place, see the credential reference.
