KODA
The SMS is the API · zero telco contract

A screenshot can be faked.
The SMS can't.

When a customer says they've paid, a screenshot proves nothing — it can be edited, reused or invented. KODA reads the mobile-money operator's own confirmation SMS and tells you in seconds whether the money really arrived. Verify free by hand — or add WhatsApp & API on a paid plan. No telco contract. You pay only when you get paid.

Reads only the payment SMS — never your contacts, never your money. The money goes straight from your customer to you; KODA only tells you it arrived. And a code used once is dead forever.
Works with Orange MoneyAirtel MoneyM-Pesa (Vodacom) Africell MoneyMTN MoMoWave Moov MoneybKash GCashJazzCash + any operator that sends SMS
Merchant SIM · Kinshasa t = 0.0s
Orange Money · incoming SMS Vous avez recu 25 000 FC de JEANNE N. (+243 89•···4521). Ref: OM.260717.1432.A88213. Solde: 342 500 FC
Customer submits the reference
operator recordamounttimingpayersingle-use
VERIFIED
→ POST merchant.webhook { "event": "payment.verified", "amount": 25000, "currency": "CDF", "operator": "orange_cd", "risk_score": 0.02, "receipt_id": "rcp_KODA_7f21" }
6–18 mo<10 stelco negotiation → verification
$0per failed verification — success only
235operators · 95 countries, zero contracts
5doors: manual · chat · API · USSD · SMS
One engine · five doors

A market trader and a 400-merchant platform use the exact same truth.

Identical matching, fraud scoring, replay protection and audit trail — only the interface differs by technical capacity. One account, one ledger, zero migration when you graduate.

NEW · NO CODE
DOOR 01

Manual Mode

For merchants verifying by hand today

Open the Verify Console, paste the customer's code or snap their screenshot — get a telco-anchored verdict in ~3 seconds, with the matched SMS shown.

  • Live Payments Feed — every payment on your SIM, structured
  • Replay lock — a code used once is dead forever
  • One-tap branded customer receipts
  • Daily WhatsApp digest + team seats with audit
DOOR 02

WhatsApp Chat Mode

For sellers who live in the chat

Add KODA's number to the conversation. The customer drops their code, KODA replies "✅ Paiement confirmé — 25 000 FC reçus" right in the thread.

  • Verification joins the conversation where the sale happens
  • Zero code, zero console, zero customer behaviour change
  • FR · EN · Lingala · Swahili · Wolof · Twi at launch
  • Everything logged to the same merchant ledger
DOOR 03

API Mode

For developers & platforms

Intents, code submission, signed webhooks — order confirmed, ticket issued, course unlocked, no human in the loop.

  • 3 core endpoints — integrate in an afternoon
  • Sub-merchant API: onboard whole merchant bases
  • HMAC-signed webhooks, idempotency built in
  • Wholesale from $0.05/verification
FEATURE PHONES
DOOR 04

USSD Mode

For any handset — no smartphone, no app, no data

Dial a KODA shortcode, key in the code, and get the verdict back on-screen and by SMS. The same telco-anchored truth, on the most basic phone in the market.

  • Works on every phone — no smartphone or internet needed
  • Dial a shortcode, confirm, done — verdict in seconds
  • Same replay lock, fraud scoring and ledger as every door
  • Rolling out with partner operators (telco shortcode required)
HANDS-FREE
DOOR 05

Inbound SMS

For any phone — forward the operator SMS, done

The merchant forwards (or auto-forwards) the operator's payment SMS to KODA. KODA reads it and verifies automatically — no code to type, works even on iPhone.

  • Forward the whole SMS — KODA sees the real proof, not just digits
  • Auto-verifies the moment it lands — the merchant does nothing
  • Works on any device, including phones that can't run Sentinel
  • Same replay lock, fraud scoring and ledger as every door
↗
The built-in growth path: start Manual → see the value of unmatched-payment detection → flip on Chat → volume grows → switch on the API. Same account, same ledger, same history. Graduation is a toggle, not a rebuild.
▶ See all doors work — live demo
A live, interactive demo in your browser · no account, no real money
The canonical flow

Your customer pays exactly the way they paid yesterday.

The only thing that changes: you finally know — instantly, provably, in your language.

Customer pays normally

USSD or operator app, to your existing number. Nothing new to learn, nothing to install.

*144# → send 25 000 FC → merchant number

Operator texts your SIM

KODA Sentinel (6 MB) captures the confirmation, parses on-device, pushes a signed record.

ref OM.260717…A88213 amt 25 000 FC · bal ✓chain

The code reaches KODA

Typed at checkout, dropped in WhatsApp, or pasted in your Verify Console.

POST /intents/{id}/verify { "reference": "OM…A88213" }

Truth, delivered

Matched against the ledger, fraud-scored, locked against replay — verdict where you live.

event: payment.verified risk 0.02 · <10 s
Worldwide by construction

Coverage is a parsing template, not a contract.

KODA works wherever the operator sends the merchant a confirmation SMS with a reference and amount — the standard behaviour of GSMA-model mobile money on every continent. Each operator is added centrally and kept current automatically as their formats change — no per-country contract, no integration.

WAVE 1 · HOME

DR Congo

M-Pesa (Vodacom) · Orange Money · Airtel Money · Africell Money

WAVE 2 · AFRICA CORE

KE · TZ · UG · GH · CI · SN · CM · NG · RW

M-Pesa · MTN MoMo · Airtel · Orange · Wave · Moov

WAVE 3 · SOUTH ASIA

Bangladesh · Pakistan · Nepal

bKash · Nagad · Rocket · JazzCash · Easypaisa · eSewa

WAVE 4 · SE ASIA & PACIFIC

PH · ID · MM · PG · FJ

GCash · Maya · DANA · OVO · GoPay · Wave Money · M-PAiSA

WAVE 5 · MENA & HORN

SO · EG · JO · YE

EVC Plus · Zaad · Sahal · Vodafone Cash · Orange Money

WAVE ∞ · ANYWHERE

Community Template Program

Send 5 sample SMS from any unsupported operator → live pack within days. Coverage requests become coverage.

✳

The honest boundary, stated on purpose: app-only wallets with no SMS leg and bank rails like UPI/PIX are different mechanisms — roadmap adapters, not v2 claims. KODA's promise is exact. That's why it's credible.

Fraud engine

Built to be lied to.

Screenshot fraud exists because merchants verify against customer-side artifacts. KODA's truth is merchant-side, operator-issued, device-attested — a fraudster would have to forge an SMS into your own phone.

Code replay
Global Replay Index — every code is single-use per merchant, forever, across all five doors. A code verified manually is dead to the API too.
Stolen code
A code doesn't travel — it's tied to the payment it belongs to. Anything that doesn't line up triggers an extra identity check instead of a confirmation.
Forged screenshot
A screenshot is never accepted as proof on its own — the truth is always the merchant-side record the network itself issued.
Spoofed SMS
A forged message is cross-checked against the operator's own record and quarantined — and you're alerted, rather than paid on a lie.
Pay, then reverse
A later reversal fires payment.reversed. KODA can't stop an operator reversal — it makes you the first to know.
Balance-chain auditlive
Incoming SMSAmountNew balance
14:02 OM…F4410+15 000302 500✓
14:17 OM…B7802+15 000317 500✓
14:32 OM…A88213+25 000342 500✓
14:41 "OM"…X9931+80 000350 000✗
⚠ CHAIN BREAK — 342 500 + 80 000 ≠ 350 000
→ quarantined · merchant alerted

Every genuine operator SMS carries the running balance, so each new balance must equal the previous balance plus the amount. A spoofed SMS breaks that arithmetic. The operator's own bookkeeping is the firewall — and it works identically for bKash in Dhaka and Orange Money in Kinshasa.

Under the hood

Intelligent — and auditable by design.

An AI layer runs every verification end to end. The rule we hold ourselves to: every automatic confirmation writes a full, append-only decision trace — a verification you cannot audit is a verification you cannot defend.

Reads any operator

Structures the confirmation message across formats and languages — and keeps up as operators change theirs.

Matches to the order

Ties each payment to the right order, and forgives small typos in the customer's reference.

Scores fraud

A risk score on every match, tuned to local patterns — the fraud in Kinshasa is not the fraud in Dhaka.

Screenshot forensics

Reads a code from an image when a customer insists on sending one — assistive evidence, never sole proof.

Reconciles

Surfaces payments with no order attached — "you were paid 3× today and recorded none of it."

Handles disputes

Works the customer through a failed verify and hands you an evidence file with a recommendation.

Speaks your customers' language

FR · EN · Lingala · Swahili · Wolof · Twi, with more added per market.

Watches itself

Fleet health, coverage monitoring and delivery — plus a weekly intelligence brief for you.

Developers

Three endpoints. One coffee.

If you can call Stripe, you can call KODA. SDKs for Node, PHP/Laravel, Python and Flutter — webhook verification and idempotency built in. Docs equally deep in French and English.

A sandbox with a telco simulator

You can't send yourself real mobile money all day. Magic references produce deterministic outcomes, and POST /sandbox/sms lets you inject any operator-formatted SMS and watch KODA structure it.

  • TEST-OK-25000instant payment.verified
  • TEST-LATE-90verifies after 90 s → payment.verified.late
  • TEST-REPLAYrejected → code_already_used
  • TEST-SUFFIXmismatch → identity challenge flow
  • TEST-REVERSALverify, then payment.reversed
North-star metric, measured: first verified payment < 10 minutes from signup. Sandbox is free, unlimited, never expires.
One ladder · all five doors

Free until your merchant actually gets paid.

Every plan includes a monthly verification quota at no per-use cost — identical whether a human clicked Verify or a webhook fired. Failed matches, rejections, expired intents: free. Prepaid ACU (topped up via mobile money, verified by KODA's own engine) is drawn only by AI features and by verifications beyond your quota.

Marché

$0
forever · manual door only
  • 10 verifications/mo
  • Verify Console + Live Feed (Door 1)
  • 1 Sentinel device · replay protection
  • Daily digest
  • Chat, API, USSD & SMS: paid plans
Start free

Boutique

$5/mo
85 verifs · $0.0588/verif
  • Manual + Chat + API
  • 2 devices · 3 team seats
  • Customer receipts
  • Web widget + webhooks
  • Reconciliation
Choose Boutique

Commerce

$20/mo
360 verifs · $0.0556/verif
  • Everything in Boutique
  • 5 devices · 10 seats
  • Vision + screenshot forensics
  • Dispute assistant
  • Priority parsing · WhatsApp SLA
Choose Commerce

Plateforme

$100/mo
1,900 verifs · $0.0526/verif
  • Everything in Commerce
  • Unlimited devices
  • Highest throughput (100 req/s)
  • SLA-backed response times
Choose Plateforme

Scale

$400/mo
8,000 verifs · $0.05/verif
  • Everything in Plateforme
  • Sub-merchant API + scoped keys
  • Trust-score API
  • Re-billing endpoints
  • Distributor / reseller access
Choose Scale

Enterprise / Gov

Custom
committed volume
  • In-country residency (dedicated deployment)
  • Dedicated corridor models
  • White-label (+20%)
  • Targeted 99.9% SLA, credited if missed
  • Annual contract
Contact sales
"Pay only when your merchant gets paid." — the moral centre of the pricing. Pay-as-you-go ACU packs from $62.50 → 1,000 ACU · a plan's included rate always beats pay-as-you-go · prepaid top-ups verified by the engine itself

Zero telco meetings.
Ten minutes to your first verified payment.

No card required · sandbox never expires · docs in FR + EN

Open your KODA account →