Jenga_Systems

Payments integration

Collecting money is easy. Accounting for every shilling is the actual product.

/ The problem

Any developer can call the M-Pesa Daraja API. The hard part appears at month end: callbacks that never arrived, duplicate confirmations, reversals, partial settlements, and a finance team reconciling three CSV exports by hand.

Payment bugs are not ordinary bugs — every failure is either your money or your customer’s money. The integration has to assume the network will fail mid-transaction, because on mobile money rails, it will.

/ How we deliver

We build payments as a ledger first and an API integration second. Every transaction gets an idempotent internal record before any external call, so retries, timeouts, and duplicate callbacks resolve to one truth. Reconciliation against provider statements is automated, and exceptions surface in a queue — not in a spreadsheet.

We integrate the rails your customers actually use: M-Pesa (C2B, B2C, B2B, Express/STK push), Airtel Money, and card gateways, behind one internal interface so adding a rail later does not mean rewriting checkout.

/ What we build with it

E-commerce checkout

STK push at checkout with instant confirmation, automatic retries, and no lost callbacks.

Recurring collections

Subscriptions and instalments billed on schedule and reconciled without anyone chasing screenshots.

Disbursements at scale

B2C payouts — refunds, winnings, commissions — with maker-checker controls and a full audit trail.

Multi-rail collection

M-Pesa, Airtel Money, and cards behind one internal interface, so finance sees one ledger.

/ Capabilities

  • 02.1

    M-Pesa Daraja — STK push, C2B, B2C, B2B

  • 02.2

    Airtel Money and cross-network collections

  • 02.3

    Card gateway integration and tokenisation

  • 02.4

    Double-entry transaction ledgers with idempotency

  • 02.5

    Automated reconciliation against provider statements

  • 02.6

    Payouts, disbursements, and settlement reporting

/ Spec sheet

The short version

How this service runs, in title-block form. Ask us for the long version.

Rails
M-Pesa (STK, C2B, B2C, B2B), Airtel Money, cards
Ledger
Double-entry, idempotent writes
Reconciliation
Automated against provider statements
Exceptions
Queued for review — never silently dropped
Integration
REST API + signed webhooks

/ How delivery runs

  1. 1

    Rails & accounts

    Paybill/till acquisition, Daraja onboarding, and gateway agreements — we drive the paperwork with you.

  2. 2

    Ledger first

    The double-entry ledger and idempotency layer go in before any external call is made.

  3. 3

    Integrate & certify

    Each rail is integrated, tested against failure cases, and taken through the provider’s go-live certification.

  4. 4

    Reconcile & monitor

    Automated statement reconciliation and exception queues switch on with the first live transaction.

/ Common questions

Can you fix an existing broken integration?

Yes — this is one of our most common engagements. We add the missing ledger and reconciliation layer around the integration you have, then repair the integration itself.

Do you handle the mobile network paperwork?

We guide you through paybill/till acquisition and Daraja go-live requirements, and handle the technical certification steps on your behalf.

What about compliance?

We build to the provider’s security requirements — credential vaulting, IP whitelisting, callback signing — and design data handling so card data stays with the PCI-compliant gateway, not on your servers.

/ Next step

Talk to us about payments integration

Describe where you are — greenfield, half-built, or on fire. We answer with a technical read within one working day.

Start a conversation ↗