A shop assistant completing a sale on the sell.ke POS, with a barcode scanner and a receipt printer on the counter

    Industry · Furniture & décor

    POS system for a furniture shop in Kenya

    Furniture breaks a normal till in two places. The sale often happens weeks before the goods exist — a made-to-order sofa is a deposit, a lead time and a promise — and the delivery is a material cost rather than a courtesy, because you are moving something that needs a pickup and two people.

    Shops handle it with a deposit book and a verbal delivery quote. The consequences are predictable: nobody can say what is owed against orders in production, the workshop works from a WhatsApp thread, and the delivery fee agreed at the counter is forgotten by the time the lorry is loaded. On a KES 90,000 sale, a KES 3,000 delivery misjudged is not a rounding error.

    What solves it

    Deposits against a lead time

    Take part payment now with the balance tracked as outstanding, so an order in production is a record with a value rather than a note.

    Balance collected on delivery

    The remainder is collectible on any tender when the goods go out, and the order closes only when the money adds up.

    Delivery priced by zone

    A Karen delivery and a Thika delivery are quoted from a rate table rather than negotiated at the counter, and the fee is its own reported line.

    Made-to-order alongside stock items

    A finished piece off the floor and a piece to be built go through the same order type, so the pipeline is one list.

    The showroom online

    The storefront shows the same catalogue on your own domain, which is where most furniture browsing now starts.

    A worked example: the deposit, the lead time and the lorry

    A customer orders a six-seater in a fabric you do not hold, KES 96,000, six weeks' lead time, delivery to Kitengela. They pay KES 40,000 down.

    Written in a book, this order has three ways to go wrong. The workshop may not know it is confirmed until someone chases; nobody can tell you that the business is holding KES 40,000 of customer money against goods not yet delivered; and the delivery to Kitengela was quoted verbally at KES 2,500 by a salesperson who had no idea it costs KES 5,500 to get a lorry out there and back.

    As an order with a deposit, all three are handled. The KES 56,000 balance sits as outstanding against the customer and the KES 40,000 is money received against an undelivered order — which is a liability, and the ledger treats it as one. The Kitengela zone rate quotes KES 5,500 at the point of sale, so the customer agrees to the real figure before they leave rather than arguing with the driver six weeks later. And when the sofa goes out, the balance and the delivery are collected on the same order that started as a deposit.

    • KES 96,000 order, KES 40,000 deposit, KES 56,000 outstanding
    • Deposit recognised as money held against undelivered goods
    • Kitengela quoted at its real zone rate of KES 5,500, at the counter
    • Balance and delivery collected against the original order

    Questions from this trade

    Can I take a deposit and collect the balance on delivery?

    Yes. Part-pay the order now and the balance is tracked as outstanding against the customer until the goods go out, when it is collectible on any tender. The order closes only when the amounts add up.

    How are delivery fees for bulky items handled?

    By zone. Each area you serve carries the rate that trip genuinely costs, quoted at the point of sale rather than agreed verbally, and the fee is a separate line so you can see whether deliveries are covering themselves.

    Can I sell items that are made to order?

    Yes, through the same order type as floor stock, so orders in production and orders ready to collect are one pipeline. The lead time and the deposit are attached to the order rather than living in a separate book.

    Do customer deposits show up in the books properly?

    Yes. Money received against goods not yet delivered is a liability, not revenue, and the double-entry ledger treats it that way. That distinction matters as soon as the business has more than a handful of open orders.

    Can customers browse the range online?

    Yes. The storefront runs on your own domain off the same catalogue as the showroom, which is where most furniture buying now begins even when it finishes in person.

    Does it work with M-Pesa?

    Yes, at both ends of the business. At the counter a cashier sends an STK push and the customer approves it on their phone; the sale will not close until the confirmation lands. Merchants without Daraja API access can take a paybill or till payment and confirm the reference manually. On the online shop, M-Pesa is a checkout option like any other. The shortcode is the merchant's own, so the money lands in the business's account without sell.ke sitting in between.

    Can I sell online with the same system?

    That is the point of it. The storefront reads the same products, the same branch stock and the same price lists as the till — there is no sync job and no separate ecommerce subscription. A web order and a counter sale move the same stock and land in the same report, tagged by channel so you can see which one is actually growing.

    What does it cost?

    Plans run from KES 1,499/month for a single-branch till to KES 14,999/month for unlimited scale, with the online shop, M-Pesa checkout and KRA eTIMS receipts included from KES 2,999/month. Every plan starts with a 14-day trial and no card. There is no hardware to buy — sell.ke runs on a phone, tablet or laptop you already own.

    Try it in your furniture & décor

    Fourteen days, no card, no hardware to buy. Import your product list or let Amina build it from a photo of your price list.