Skip to content

For Kenyan businesses with a PayBill or Till

Every M-Pesa payment, in your system the second it lands.

CoinBox connects your M-Pesa PayBill or Till to your accounting, ERP, POS or app. Customers pay the way they always have. The money goes straight to you. We make sure your books know about it immediately.

Free until you process KES 10,000 a month. No card, no setup fee.

Your money never touches us

Payments settle in your own PayBill or Till. We only read the receipt.

Nothing slips through

Every notification is stored before it’s acknowledged, then delivered with retries.

Built on Safaricom Daraja

The official M-Pesa C2B API, using your own Daraja app and shortcode.

Stop matching M-Pesa statements to invoices at 11pm.

If your team copies receipt numbers from SMS, downloads statements to reconcile, or calls customers to confirm they’ve paid, CoinBox takes that job off your hands.

Without CoinBox

  • Someone reads M-Pesa SMS and types payments into the system
  • Orders wait while you check whether the money actually arrived
  • Month-end means downloading statements and ticking rows by hand
  • Wrong account numbers sit unmatched for weeks

With CoinBox

  • Payments post to your system automatically, with receipt and invoice number
  • Release orders the moment Safaricom confirms. No more “nimetuma”, no screenshots
  • Payment reports by day, month or account, ready when you are
  • Statement reconciliation flags anything missing or mismatched

Connected in an afternoon. Then you forget it’s there.

Create your account →
  1. 01

    Connect your PayBill or Till

    Sign up, then paste the Consumer Key and Secret from your Daraja app. They’re encrypted and never shown again. Our guide covers taking your app live with Safaricom.

  2. 02

    We register with Safaricom

    One click tells Safaricom to send this shortcode’s payment confirmations to CoinBox. Optional validation can reject payments with a missing account number.

  3. 03

    Payments flow to your system

    Each payment is recorded and pushed to your webhook within seconds. Pull anything else from the API: by receipt, by invoice, or as daily totals.

Everything between the customer’s PIN and your ledger.

Signed webhooks

HMAC-signed so you know it’s us. Retried for up to 10 attempts, with every delivery logged and replayable.

A clean REST API

Transactions with filters and cursor pagination, lookups by M-Pesa receipt or invoice, and payment reports.

No double posting

Safaricom sometimes resends the same notification. Each receipt is recorded exactly once, however many times it arrives.

Reconciliation

Import your M-Pesa statement and see what matched, what’s missing and what doesn’t add up, line by line.

Reversals on record

A reversal is recorded beside the original payment, never over it, so your history stays complete for audit.

Many shortcodes, one view

Connect every PayBill and Till your business runs, give each its own webhook, and see totals per account.

For developers

Skip the Daraja plumbing.

No callback servers to babysit, no OAuth tokens to refresh, no deduplicating Safaricom retries. You get one normalised payment object, the same for every PayBill, Till and, soon, every bank.

Auth
Scoped API keys
Delivery
Webhooks + REST
Signature
HMAC-SHA256
Amounts
Exact decimals, never floats
POST → your webhook transaction.succeeded
{
  "type": "transaction.succeeded",
  "data": {
    "id": "txn_01JB8Q4W6R",
    "provider": "mpesa",
    "payment_method": "paybill",
    "short_code": "4072129",
    "provider_transaction_id": "UJT41BX7QK",
    "merchant_reference": "INV-2041",
    "amount": "2500.00",
    "currency": "KES",
    "status": "succeeded",
    "paid_at": "2026-10-29T10:15:30+03:00"
  }
}
$ curl coinbox.co.ke/api/v1/transactions/receipt/UJT41BX7QK

Pricing

Free to start. Then 1% of what you process.

One plan, every feature. No setup fee, no monthly subscription, no per-seat charges. You only pay once your business is moving real volume through CoinBox.

  • Unlimited PayBills, Tills and team members
  • Webhooks, REST API and reconciliation included
  • Billed monthly. Your money stays in your own M-Pesa or bank account

1%

of monthly volume, from KES 10,000

KES 0 below that

5K10M
You’d pay CoinBox KES 2,500

That’s per month, on KES 250,000 processed.

Start for free

Questions merchants ask us

Something else? Create an account and read the full M-Pesa setup guide inside. It’s free.

Do you hold or touch my money?

Never. Customers pay your own PayBill or Till exactly as they do today and the money stays in your own M-Pesa account, or moves to your bank as it always has. CoinBox only receives Safaricom’s payment notification, records it and forwards it to your systems.

What do I need to get started?

An active PayBill or Till number, access to your M-Pesa Business portal, and a free Safaricom Daraja account. Our setup guide walks you through creating the Daraja app and taking it live. Most businesses are connected in an afternoon.

Does it work with Till numbers (Buy Goods)?

Yes. For Tills, Safaricom sends notifications for the store (HO) number, so you connect that and tell us the till number your customers pay to.

How do I get payments into my ERP, POS or app?

Two ways, use either or both. Webhooks push each payment to your URL within seconds, signed so you can verify it came from us. The REST API lets you pull transactions, look one up by M-Pesa receipt or invoice number, and get daily totals.

What happens if my server is down?

Nothing is lost. Every Safaricom notification is stored before we acknowledge it, and webhooks are retried with backoff for up to ten attempts. You can see and replay every delivery in your dashboard.

How is the 1% fee charged?

It’s free while you process under KES 10,000 in a month. From KES 10,000 it’s 1% of the total recorded that month, billed monthly. We can’t deduct it from your payments because we never hold them.

Do you support banks and cards?

M-Pesa is live today. Bank payments and card processors are on the way, built on the same transaction format, so your integration won’t change when you add them.

Contact

Talk to a person, not a bot.

Questions about pricing, a large integration, or getting your PayBill connected? Send us a note and we’ll reply by email, usually within one business day.

Sales
Pricing, onboarding several businesses, partnerships
sales@coinbox.co.ke
Support
Already a merchant? Open a ticket under Support in your portal, or email
support@coinbox.co.ke
I’d like to talk to

We only use your details to reply to you.

Your next M-Pesa payment could post itself.

Set up your PayBill or Till today. It’s free until you’re processing KES 10,000 a month.