Fulfilment Kernel
Create, route, and manage fulfilment jobs at scale. Smart batching, SLAs, live ETAs, and exceptions.
Explore platformRun fulfilment jobs, riders, proof, payments, exceptions, and tracking from one operational truth layer.
Trusted by operators across Africa

Create, route, and manage fulfilment jobs at scale. Smart batching, SLAs, live ETAs, and exceptions.
Explore platformCapture delivery proof, IDs, and barcodes. Tamper-evident, time-stamped, and irreversible by design.
See proof flowsCOD collection, reconciliation, and payouts. Commissions and fees made transparent.
View finance layerHow it works
Kanvoya preserves the chain of custody across every handoff, status change, proof event, payment event, and exception.
Operational ledger
job.createdassignment.acceptedproof.pickup_capturedpayment.cod_collecteddelivery.completedwebhook.sentTracking
Share token-scoped status, ETA, proof-safe updates, and incident-aware messaging while your team keeps the full operational ledger.
Out for delivery
ETA 14:00 - 15:00Delivery instructions confirmed. Proof available after completion.Rider assigned, pickup proof captured, COD pending, support note attached, and webhook ready.
Pricing
Start with the operating model you already use, then add proof, payments, providers, and support controls as your delivery volume grows.
For teams dispatching their own riders.
Usage-basedFor partner fleets, hubs, and managed delivery promises.
CustomFor platforms embedding fulfilment into their own systems.
Volume-basedDocs / Developers
Create jobs, subscribe to events, replay webhooks, test payment states, and expose tracking without coupling your product to courier-specific workflows.
{
"status": "success",
"message": "job created",
"data": { "job_id": "job_982731" },
"request_id": "req_7a4",
"trace_id": "trc_7a4"
}Start with your existing order sources, riders, providers, payment modes, and support process. Kanvoya becomes the verified fulfilment layer between them.
Book demo