The all-in-one point of sale for retail and wholesale shops.

Sell for cash, M-Pesa or credit, keep your stock count right, see who owes you, and send every sale to KRA eTIMS without typing it twice. Duka works on the phones, tablets and computers you already have, and keeps selling when the internet goes down.

14 days free. No card needed.

A sale takes a few taps.

Everything a cashier does happens on one screen, on whatever device is at the counter.

  1. 01

    Find the item

    Scan its barcode or type part of the name. Each item can carry a retail and a wholesale price, and the till switches between them in one tap.

  2. 02

    Take the money

    Cash with the change worked out, an M-Pesa prompt sent to the customer's phone, a Paybill or Till payment matched to the sale, or credit for a customer you know.

  3. 03

    Print and file

    The receipt prints on a 58 mm or 80 mm thermal printer, and the sale goes to KRA eTIMS without anyone re-typing it.

No internet? No problem.

Network down or bundles finished, the till carries on. Cash and credit sales are saved on the device, each with its own receipt number, so every customer still leaves with a printed receipt. Only M-Pesa prompts and card payments wait for the network.

When the connection comes back, they upload on their own, in the order they were made, and go to KRA eTIMS. A shift can't close while any are still waiting, so the day's totals are always the whole day.

One morning at the till17 minutes offline
  1. 10:42
    Online

    M-Pesa · KSh 1,750 · uploaded

    R261014-1041

  2. 10:47
    Offline1 to sync

    Cash · KSh 460 · saved on this till

    R261014-Q7C2E91A0

  3. 10:58
    Offline2 to sync

    Credit to Wanjiru · KSh 1,200 · saved on this till

    R261014-Q3B6F0D42

  4. 11:03
    Back online

    2 sales uploaded and sent to KRA eTIMS

If cash or stock goes missing, you’ll know.

The back office runs in the same system as the till, on any device, for one counter or several branches. Every sale, delivery, stock count and price change is kept, with who did it and when.

  • Cash at the close

    Each till’s shift ends with a count against what the drawer should hold, so a short shows at once, under the name of whoever closed it. Fare or bags paid from the drawer are recorded, so they never pass for a short.

  • Stock you can trace

    Every delivery, sale, return and count is a line in the product’s own ledger, so “the system says 3, I received 10” always has an answer. Items running low and batches near their expiry date are flagged.

  • Customers who owe you

    Replaces the credit book. Each customer has a balance, a credit limit and a statement. Anything over 30 days stands out, and a reminder goes on WhatsApp with the balance already typed.

  • Suppliers you owe

    On Pro and Chain, deliveries taken on credit wait under “Who you owe”, oldest first, and are paid down by cash, M-Pesa or bank transfer. Orders go to the supplier on WhatsApp.

  • Reports

    Sales, the cost of what you sold and the profit on it, for today or any dates you pick. On Pro and Chain, sales by shelf and by person, net profit after expenses, and a spreadsheet or PDF for your accountant.

  • Staff

    Owner, manager and cashier roles, with cashiers signing in to the till by PIN. Only managers give discounts, and every change to a price, a credit limit or a role is logged with who made it.

Made for mini-marts, wholesalers, hardware stores, agrovets, boutiques and every other kind of duka.

Pay by the month or the year. No terminal to buy.

Starter

One shop with one counter, getting off the exercise book.

KSh 2,500a month

or KSh 25,000 a year

  • 1 branch
  • 1 till
  • 3 staff logins
  • Included: M-Pesa, KRA eTIMS, offline selling
  • Included: Stock, customer debts, sales reports
  • Not included: Supplier credit and purchase orders
  • Not included: Profit, expenses and sales by staff
  • Not included: Excel and PDF exports
  • Not included: SMS and WhatsApp evening summary

Pro

Recommended

A busy shop with more than one counter, or a second branch.

KSh 6,900a month

or KSh 69,000 a year

  • 2 branches
  • 3 tills
  • 10 staff logins
  • Included: M-Pesa, KRA eTIMS, offline selling
  • Included: Stock, customer debts, sales reports
  • Included: Supplier credit and purchase orders
  • Included: Profit, expenses and sales by staff
  • Included: Excel and PDF exports
  • Included: SMS and WhatsApp evening summary

Chain

Branches under one owner, with the numbers for each.

KSh 18,000a month

or KSh 180,000 a year

  • 10 branches
  • 3 tills per branch
  • Unlimited staff logins
  • Included: M-Pesa, KRA eTIMS, offline selling
  • Included: Stock, customer debts, sales reports
  • Included: Supplier credit and purchase orders
  • Included: Profit, expenses and sales by staff
  • Included: Excel and PDF exports
  • Included: SMS and WhatsApp evening summary

Every plan starts with 14 days free.

Before you start.

The questions shop owners ask first. Anything else, ask us on WhatsApp.

Do I need to buy a special POS machine?

No. Duka runs on any Android phone, iPhone, tablet or laptop you already own, with nothing to install. A receipt printer is optional: any 58 mm or 80 mm thermal printer works, and the phone’s camera or any USB or Bluetooth scanner reads barcodes.

How does KRA eTIMS work?

You never type a sale into eTIMS. Once your KRA PIN is set up, Duka sends each sale to KRA as it completes, and the receipt prints KRA’s invoice number and QR code. KRA approves Duka as your integrator once, and we help you with that request.

Where does the M-Pesa money go?

Straight to your own Till or Paybill. During setup we connect your business number to Duka, and from then on each M-Pesa prompt goes out from your number and every payment is matched to its sale.

Who can see my shop’s data?

Your shop runs on its own database, separate from every other shop on Duka. Inside it, everyone signs in with their own account, and buying stock, customer accounts and settings are kept to managers and owners. On Pro and Chain you can export your sales to a spreadsheet or a PDF at any time.

How do I pay for it?

Monthly, by M-Pesa, from inside the app, after a 14-day free trial with no card needed. If a payment lapses, Duka pauses until it’s paid, and your data stays exactly as you left it.

Can you load my stock list?

Yes. Send it to us on WhatsApp and we’ll load it for you, with retail and wholesale prices. After that, the deliveries you receive in Duka keep the counts right.

Talk to us.

Tell us about your shop and we'll help you set up, from loading your stock list to connecting your M-Pesa and KRA details.

WhatsApp
+254 705 404 274
The quickest way to reach us