D
Duuka

Duuka

Online shops for furniture makers, bag sellers, boutiques, hardware stores, every businessin East Africa.

Each shop gets its own storefront, its own catalogue and orders straight to WhatsApp. No app to install, no payment set-up to wait for.

Shops open
2
Products listed
59
Ordering
WhatsApp

On Duuka

Visit a shop

How it works

From a WhatsApp chat to a shop link in three steps.

No app for your customers to install, no payment gateway to apply for, no developer to chase. You keep selling the way you sell today; Duuka gives it a proper home.

  1. 1

    Send us what you sell

    Photos, names and prices, the way you already share them on WhatsApp. Or type them into your own admin, or upload a price list from Excel.

  2. 2

    Your shop goes up

    Your own address, your categories, your prices in shillings and a search box. It looks like your shop, not like a template.

  3. 3

    Share the link. Orders arrive on WhatsApp.

    Put it in your Status, your bio and your posters. A customer taps Order, and the chat opens with the item, its code, the quantity and the total already written.

duuka/furniture/shop/mahogany-reading-chair
A Mvule Furniture product page on Duuka: the Mahogany Reading Chair at USh 705,000, down from USh 850,000, in stock, with an Order on WhatsApp button.

Why Duuka

Selling on WhatsApp works. Running a shop on it is hard work.

Every shop that sells through chats hits the same walls. Duuka takes down each one, and leaves the part that works (talking to your customers) exactly where it is.

"How much?" fifty times a day

Every product shows its price, and the old price crossed out when it is on offer.

Status photos vanish after 24 hours

A catalogue that stays up, sorted into categories and sub-categories.

"The one you posted last month"

A search box across the whole shop, and related items on every product page.

Orders that say "the brown one"

Every order message names the item, its code, the quantity, the total and the link.

Selling what you no longer have

Stock on every product. Sold-out items say so; hidden items leave the shop without being deleted.

Templates priced in dollars

Uganda shillings throughout, written the way customers read them: USh 705,000.

Updating fifty prices one by one

Export the catalogue to a spreadsheet, change it in Excel, import it back.

One phone, one password, everyone on it

Each person who helps run the shop gets their own sign-in, and loses it the day they leave.

Pages that crawl on mobile data

Pages are built on the server and arrive ready to read: light enough for a phone on 3G.

One platform

One Duuka. Every shop its own.

A furniture maker in Kampala and a bag seller in Jinja run on the same Duuka, and neither ever sees the other. Each shop is a storefront, a catalogue, a WhatsApp number and a team of its own. That's how a single deployment can serve a whole market.

duuka/furniture
The Mvule Furniture storefront on Duuka, with its categories and a featured bedroom collection.
The Kikapu Bags storefront on a phone.

Its own address

/furniture, /bags, /your-shop: a link that is yours to share.

Its own voice

Name, tagline and the announcement strip across the top.

Its own WhatsApp

Orders go to the number the shop chooses, not to Duuka.

Its own people

Shop admins who can run this shop and see nothing else.

Kept apart by the database, not by good manners. Every query Duuka runs is tied to one shop before it reaches the data, and a request that names no shop gets nothing at all. It fails closed, and there are tests that try to cross the line on every build.

The back office

Everything behind the counter, already built.

A shop is more than a storefront. Duuka gives every shop a real admin: products, categories, its profile, its people and a way to change a hundred prices at once. Every one is a working screen on day one.

admin.duuka/resources/products

A catalogue you can actually manage

Name, price, an offer price, a product code, stock and a photo. Mark the ones to feature on the home page, hide the ones you are not selling this month, archive the ones you never will.

What to notice

  • Prices are whole shillings: no cents, no rounding surprises
  • Setting an old price shows the saving on the shop automatically
  • Hiding a product takes it off the shop without deleting it

Sign-in & security

Locks you would otherwise pay extra for.

Your shop is your income, so its admin is locked like a bank app: second factors, passkeys, a list of every device that is signed in, and a firewall in front of it all. Switched on, not sold as an upgrade.

admin.duuka/login
The Duuka admin sign-in page: email and password, a remember-me option, and a note that accounts are created by an administrator.

No public sign-up. Only the people you add.

Nobody can create an account on your shop's admin. Accounts are made by an administrator, and repeated wrong passwords lock an account before anyone can guess their way in.

What to notice

  • Passwords are checked against the most common leaked ones
  • Sign in with a password or a passkey
  • Sessions sit in cookies scripts cannot read

Before you commit

The questions a careful owner asks first.

Handing over your catalogue is handing over your business. These are the answers to what shop owners ask before they sign up, with the screens that back each one.

api.duuka ยท every query, every shop

No. Not by accident, not on purpose.

Every product, category and profile belongs to exactly one shop, and every query is tied to a shop before it runs. A shop admin who tries another shop's address gets a plain 'not found'.

What to notice

  • Enforced in the data layer, under every screen
  • A request with no shop gets nothing rather than everything
  • Tested on every change, including attempts to cross over

Not included yet, so nothing surprises you later: taking card or Mobile Money payments on the site (customers pay you the way they already do), delivery tracking, and a custom domain per shop. Orders are confirmed with you on WhatsApp.

Out of the box

Already running on day one.

Nothing on this list is a plan or an add-on. It is all in the Duuka the shops above are running on today.

The shop

  • Its own address
  • Categories and sub-categories
  • Search
  • Related products
  • Offer prices
  • Stock and sold-out labels
  • Featured products
  • Announcement strip
  • Order on WhatsApp
  • Prices in shillings
  • Built for phones
  • Pages search engines can read

The back office

  • An admin for every shop
  • Shop admins
  • One owner over all shops
  • Spreadsheet import and export
  • Rich product descriptions
  • Photo uploads
  • Product PDFs
  • Hide, archive, bring back
  • Hide a whole shop

The locks

  • Closed sign-up
  • Two-factor codes
  • Passkeys
  • Signed-in devices
  • Account lockout
  • Common-password check
  • Web firewall
  • Rate limiting
  • Content security policy
  • Tamper-evident activity log
  • Personal data export
  • Shop-by-shop isolation

Under the hood

  • Postgres database
  • Cloud file storage
  • Every change tested before it ships
  • Secret scanning
  • Dependency audits
  • Code scanning
  • Deploys itself when tests pass

Compared

Where Duuka fits among what you already use.

Duuka does not replace your WhatsApp; it gives it a shop. One row goes against us, because a comparison one column wins every time is not a comparison.

What you getDuukaWhatsApp StatusA social media pageA website built for you
Still there after 24 hoursYesNoYesYes
Sorted into categories, with searchYesNoPartly, or with effortYes
Every item has a price on itYesPartly, or with effortPartly, or with effortYes
Orders arrive with item, code and totalYesNoNoPartly, or with effort
Each helper has their own sign-inYesNoPartly, or with effortPartly, or with effort
Open the same weekYesYesYesNo
No servers or updates for you to look afterYesYesYesNo
Card or Mobile Money checkout on the siteDuuka does not take payments; you are paid the way you are today.NoNoNoPartly, or with effort

โ— Yesโ— Partly, or with effortโ—‹ No

Questions

Asked before every new shop opens.

Something not covered here? Ask on WhatsApp; a real person answers.

Do my customers need an app or an account?

No. Your shop is a web page: it opens from a link in any phone's browser. When a customer orders, it opens the WhatsApp they already have.

How do customers pay me?

The way they pay you today: Mobile Money, cash on delivery or the bank. You agree it on WhatsApp. Duuka never touches the money, so there is no payment gateway to apply for.

Can I change my own prices and photos?

Yes, from your shop's admin on your phone or computer, one product at a time or a whole price list at once from a spreadsheet. Changes show on the shop within a minute.

Can more than one person run the shop?

Yes. Each person gets their own sign-in to your shop only. When someone leaves, removing them signs them out everywhere, immediately.

I have more than one shop. Is that one account or several?

Each shop is separate, with its own address, catalogue and WhatsApp number, but one person can be an admin of several shops and switch between them.

Is my shop's information safe?

Each shop's data is kept apart in the database itself, the admin sits behind a firewall with two-factor sign-in and passkeys, and every change is recorded in a tamper-evident log.

Does it work on slow internet?

Yes. Pages are prepared on the server and arrive ready to read, so a phone on mobile data shows the shop without waiting for heavy scripts.

Can I leave, and take my catalogue with me?

Yes. Export your products and categories as spreadsheets at any time. They are yours.

Can my shop have its own domain, like myshop.co.ug?

Not yet. Every shop lives at its own address on Duuka for now, and its own domain is on the list.

Your shop, open this week.

Duuka means shop. Send us a message with what you sell, and get a link your customers can order from.