Stop polling and refreshing. KODA fires a signed payment verified webhook the instant a mobile money payment clears, so your order confirms itself in real time.
— reads
The best payment experience is the one that confirms itself. Nobody enjoys the awkward pause where a customer waits at the counter, or on a checkout page, while someone squints at a phone trying to decide whether the money really arrived. KODA removes that pause entirely: instead of you asking whether a payment is real, KODA tells your system the instant it is, through a signed payment verified webhook. The order ships, the ticket issues, the seat unlocks — automatically.
The setup is small. You add a webhook endpoint on your server and register its URL with KODA. From then on, every payment that verifies — through any of the Five Ways to Accept & Verify Mobile Money (One Engine), not only the API — delivers an event to that endpoint the moment the reference matches the operator's confirmation SMS. There is no queue to drain and no schedule to tune; the event arrives when the truth arrives.
This is the piece that lets you stop polling. Polling means hammering an endpoint every few seconds asking "is it done yet," which wastes requests, adds latency, and still leaves a gap between the payment clearing and your system noticing. A webhook inverts that: KODA already knows the precise instant a payment is confirmed, so it simply pushes that fact to you. Your checkout reacts in real time instead of on a timer.
Webhooks pair naturally with the The Mobile Money Verification API (3 Endpoints, No Telco Deal) to form a fully automated flow. Your server creates the intent, the customer pays and submits their reference, the engine verifies it, and the webhook closes the loop by telling your backend to fulfil the order. You write the business logic once — grant access, send the goods, email the receipt — and it runs itself for every future sale.
Security is not an afterthought here. Each webhook endpoint gets its own signing secret, so your server can confirm that an incoming event genuinely came from KODA and was not forged by an attacker who guessed your URL. Events are scoped per merchant, deliveries are logged, and payloads can be replayed for debugging. The exact signing scheme and verification steps are documented on the KODA API for developers page.
This webhook mechanism is what quietly powers Door 3, the self-confirming order. When the KODA Sentinel app on the merchant phone reads an incoming operator SMS and it matches an open order, the webhook fires with no human anywhere in the loop — the pattern described in Auto-Verify Every Payment with the KODA Sentinel App. A customer can pay at midnight and receive their download before you have even looked at your phone.
It matters for African merchants because trust and speed are often at odds. The safe move is to wait and verify; the move that wins the sale is to release quickly. Webhooks let you have both — the release only happens after real verification, but that verification is instantaneous, so the customer never feels the wait. You stop choosing between caution and conversion.
A common mistake is building your fulfilment logic to trust the customer's "payment sent" message or a screenshot, then reconciling failures later by hand. That reconciliation work is exactly what eats a small team's evenings. If fulfilment is instead gated on a verified webhook, the reconciliation problem largely disappears, because nothing ships that was not first confirmed against the operator's own record and locked against reuse.
Reliability is part of the design too. A webhook is only useful if it actually arrives, so deliveries are retried on failure and every attempt is recorded, which means a brief outage on your side does not silently lose a confirmed payment. When your endpoint comes back up, the event is still waiting for it. And because each verified reference is locked forever in the engine, a retried delivery can never accidentally double-fulfil an order — your handler can safely treat the same event id as idempotent.
Underneath, every event is signed, replayable, and written to the same locked ledger you can inspect from the How KODA verifies mobile money payments console, so your automated flow and your manual checks always agree. Whether the payment came in through the API, a WhatsApp message, or the Sentinel app reading an SMS, the same webhook shape reaches your server, so you write your fulfilment logic once. Set up your first endpoint on the KODA API for developers page after you Get started with KODA free, point it at your fulfilment handler, and let your orders start confirming themselves.
KODA sends your server a signed webhook the moment verification succeeds — no polling. See the KODA API for developers reference.
Each endpoint has its own signing secret so you can verify authenticity, and events are scoped per merchant. Details on KODA API for developers.