Everything you need to sell

Five features. Zero friction.

Every DukaBot business ships with the same core: a shop link, a WhatsApp catalog, M-Pesa checkout, a merchant dashboard, and the newest: end-to-end delivery with live rider tracking.

Customers stay in WhatsApp. No app, no account.

They tap your DukaBot link, see your catalog inside WhatsApp, pick items by number, and type PAY. Every interaction is a native WhatsApp message; nothing to install, nothing to remember.

  • Works on any WhatsApp, no Business account needed for the customer
  • Order by number reply, “1, 3 then PAY”
  • Session survives connection drops, resume mid-order

Every payment method your customer prefers.

DukaBot's payment layer is IntaSend, the same partner we use for merchant payouts. That gets you M-Pesa STK Push (with Safaricom Daraja under the hood) and card checkout out of the box, plus every future modality IntaSend rolls out (bank, wallets, cross-border) with no work on your side.

M-Pesa STK PushCard (Visa · Mastercard)Hosted CheckoutPartial + full refundsB2C payouts to your walletMore via IntaSend →

One WhatsApp number. Many shops.

Every business claims a unique shop code. Customers hit /s/<shopCode> which routes them under the shared DukaBot WhatsApp Business Platform number, but each conversation resolves to the right merchant, catalog, and Till.

MAMA-NJERIGRACES-SALONHABIBI-ELEC

A real dashboard. No console to learn.

Watch KES revenue reconcile against M-Pesa in real time. See repeat buyers, plan usage, and every paid order. Approve or reject from any phone with WhatsApp: reply 1 or 2.

  • Plan-usage counter (50 / 500 / 2,000 orders/mo)
  • Repeat-buyer segments + one-tap SMS
  • M-Pesa receipt ID stored on every order

Get it there. Live tracking, included.

Set your zones, add your riders, and every paid order is auto-assigned. The customer gets a signed live-tracking URL on WhatsApp, the same feed you see in the dashboard, powered by the WebSocket at track.dukabot.app.

Zones + fees per area (KES)
Rider roster + vehicle types
Signed customer tracking URL
Timeline: Created → Delivered

Straight answers

The questions every shop owner asks before trusting a bot with their money.

Tap any question for the real answer: same numbers, same rigor, plain shop talk.

  • Will customers see stock I've already sold?No, it's one list. Edit in DukaBot, live on WhatsApp in seconds.

    No. Your dashboard and your WhatsApp catalog are the same list. Change a price in KES, swap a photo, or mark an item sold out in DukaBot and the catalog customers browse updates in seconds, with no separate WhatsApp Business Platform tool to manage. And your public shop page only goes on Google once you have at least 3 available products and a description, so a half-set-up shop is never what buyers find first.

  • Could M-Pesa charge my customer and DukaBot still show 'unpaid'?Not without you seeing it: 3 checks before any order is marked paid.

    Not if the details match. DukaBot checks 3 of them before it ever marks an order paid: the Daraja CheckoutRequestID from the moment your customer taps PAY, the M-Pesa receipt code Safaricom sends back on success, and either the Paybill account reference or the Till metadata for that order. Line up all 3 and DukaBot marks it paid automatically. Miss one and the order drops into a review queue instead of silently costing you KES, with the full WhatsApp -> Daraja -> M-Pesa trail on hand so you can see exactly what happened.

  • If Safaricom resends a payment message, does my customer pay twice?Never. A resent message only ever counts once.

    Never. Retries are normal on mobile networks: Safaricom and Meta both resend a notification if they don't hear back fast enough. DukaBot runs 2 authenticated lanes, one for WhatsApp messages and one for M-Pesa callbacks via Daraja, and every notification carries an ID that DukaBot acts on only once. The same message arriving twice can't double-charge a customer or create a duplicate order; the extra copy is spotted and set aside.

  • Do I have to risk real money to learn DukaBot?No. Rehearse everything in practice mode without spending a shilling.

    No. Safaricom's Daraja system has 2 separate environments (a practice one and the live one) and DukaBot keeps them apart per business. You can run a complete order (WhatsApp chat, M-Pesa PIN prompt on a test number, confirmation) without a single KES moving or your real Till or Paybill being touched. Go live only when the rehearsal works end to end.

Runs on

IntaSend · PCI-DSSM-PesaVisa · MastercardWhatsApp Business PlatformSafaricom Daraja

Start selling. Free.

Free plan includes 50 orders per month; delivery is available as an add-on.