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

    Uganda · Restaurant & bar

    A restaurant till that knows what the kitchen used

    A restaurant does not sell what it buys. It buys rice, chicken, oil and tomatoes, and it sells plates — so the gap between a day's sales and a day's stock movement is a recipe, and most kitchens have that recipe only in the cook's head.

    Service makes it harder. Orders have to reach the kitchen correctly, bills open and stay open, a table of six pays with three MoMo numbers and some cash, and the bar is a second stock system with its own theft profile.

    Then the corporate customer at table four asks for an invoice with their TIN on it, because they need it for EFRIS.

    What you get

    What a restaurant in Uganda actually needs

    Orders that reach the kitchen

    Tickets to the kitchen and the bar as the order is taken, so the gap between what the waiter heard and what the cook made closes before the plate goes out.

    Recipes that move real stock

    A plate of pilau deducts the rice, the meat and the oil it is made of. Stock stops being a monthly guess and the kitchen's actual consumption becomes visible against what was sold.

    Open tabs, split bills, split rails

    A bill stays open while the table keeps ordering and is settled across several payments — some MoMo, some Airtel, some cash — each recorded against the same bill.

    The bar counted separately

    Bar stock by bottle and by measure, with its own variance. Bars lose stock differently to kitchens and need to be read differently.

    Waiter and shift accountability

    Sales, voids and discounts by staff member and by shift, with voids behind a manager PIN. A cancelled order after the food left the kitchen is a recorded event, not a silence.

    Invoices with a TIN when they are asked for

    Corporate and NGO diners need a named invoice with the line detail EFRIS wants. Captured at the table rather than reconstructed from a receipt roll a week later.

    EFRIS at a restaurant table

    Restaurants meet EFRIS in a specific shape: most covers are walk-in and need nothing beyond a receipt, and a small minority — corporate accounts, NGO staff, conference and event business — need a named invoice with a TIN and line detail, often weeks later when somebody is doing their own filing.

    That asymmetry is the trap. A restaurant that only keeps a receipt roll can produce a total for a table but not an itemised, buyer-attributed invoice after the fact, so the request becomes an evening of reconstruction — or a lost corporate account.

    sell.ke keeps every bill as its lines, with the ability to attach a customer and a TIN at the table. The document itself is still raised through your EFRIS route; what changes is that the detail exists, attributed, whenever it is asked for.

    • Every bill retained as items, quantities and tax treatment
    • Customer and TIN attachable at the table, not reconstructed later
    • Per-period exports for the filing, including the corporate accounts
    • Voids and comps recorded with the staff member who authorised them

    A Friday night in Kololo

    142 covers, UGX 6.8m across the kitchen and the bar. The bill for table 11 runs to UGX 412,000 and is settled with UGX 150,000 on MoMo, UGX 162,000 on Airtel and UGX 100,000 cash — three payments against one bill, each recorded, so the close has nothing to untangle.

    The recipes deducted 31kg of rice, 44kg of chicken and 19 litres of cooking oil against the plates sold. The physical count the next morning shows 27kg of rice left against an expected 29. Two kilos is small, it is specific, and it is knowable the next day instead of at the end of the month — which is the whole difference between a kitchen you manage and a kitchen you hope about.

    The bar sold 214 bottles. Stock says 209 left the store. Five bottles is a conversation with one shift, held while the shift is still fresh.

    And table 6 — four people from an NGO — asked for an invoice in the organisation's name with its TIN. It was attached at the table in the time it took to settle the bill, and the line detail was already there.

    Questions

    Restaurant in Uganda — questions

    Can one bill be paid with several mobile money numbers?

    Yes. A bill can be settled across multiple payments and multiple methods — MoMo, Airtel, cash, card — each recorded against the same bill. Split-paying tables are normal here, and a system that forces one payment per bill either loses the detail or loses the table.

    How do recipes work?

    Each menu item lists the ingredients and quantities it consumes. When the plate sells, those ingredients come off stock. You get real consumption against real sales, which is the only way to see kitchen variance without weighing everything every night.

    Can I stop waiters voiding orders after the food has gone out?

    Voids and discounts sit behind a manager PIN and record who authorised them and when. The point is not catching anyone — it is that a sale cannot quietly disappear after the kitchen has already spent the ingredients on it.

    A corporate customer needs an invoice with their TIN. Can I do that at the table?

    Yes — attach the customer and their TIN to the bill as you settle it. The sale is already held as lines with tax treatment, so the EFRIS document is raised against detail that exists rather than against a reconstruction. sell.ke does not transmit to URA itself.

    Does it work if the internet drops mid-service?

    Yes. Orders, bills and payments continue offline and sync when the connection returns. For a restaurant this is less about data than about service: a till that stops during a Friday night does not just lose records, it stops the floor.

    Do I need internet?

    Not to keep selling. Offline mode lets the till take sales, print receipts and reserve stock while the connection is down, then syncs everything when it returns. You do need connectivity for the parts that are inherently online: an M-Pesa STK push, an eTIMS submission and the online shop all need a live link.

    Will it show me my profit?

    Yes, and from a real ledger rather than a sales total. Every sale posts to a double-entry chart of accounts, so you get a trial balance, profit and loss, balance sheet and cash flow — not a CSV to hand your accountant. Margin is visible per product, per branch and per channel, because cost is tracked on the way in through purchase orders and goods-received notes.

    Can I stop staff from giving discounts or deleting sales?

    Yes. Discounts, voids and refunds sit behind a manager PIN, and every one of them records who authorised it and when. Staff accounts carry role permissions, so a cashier can sell without seeing cost prices, editing products or opening reports. A void that reverses stock is a movement in the audit trail, not a gap in it.

    Try it in your Uganda shop

    Fourteen days, no card, no hardware to buy. Your prices, stock, costs and reports all run in UGX.