Blog · Ek din, poora flow

How to use restaurant billing software — one whole day, step by step.

You open the counter, take the first order, the kitchen gets its KOT, a table pays by UPI, a parcel goes out, someone asks for a discount, and at night you close the day. Every step here is a real recording of the EasyKOT Desktop App: nothing drawn. Nine minutes to read; one day to do.

Start free — 3 months, no cardDemo on WhatsApp
Morning · 10:30

Sign in and check the menu.

The Desktop App opens on a PIN pad. Every person who touches it has their own PIN (owner, manager, cashier) and the name in the corner is who is answerable for the bills rung from here on. There is no username, no password to forget at 8pm; four digits, and you are on the menu.

What you see is the whole menu, one category at a time down the left, dishes as tiles in the middle, the bill building on the right. The row under the search box is Quick add (the dishes this counter rings most once it has a few days of sales, and before that whatever you pinned as featured) kept within one tap. Veg and non-veg carry the FSSAI marks, so a cashier who has never seen your menu can still tell a Paneer Tikka from a Chicken Tikka at a glance.

Menu feed karne mein pura din nahi jaata. The 300-item menu you see in these clips was not typed: the dashboard reads a PDF or a photo of your card and shows you a grid to check. The guide is menu setup with AI import.

Take an order

Tap a dish to add it to the bill.

A table of four sits down. The cashier taps New order, opens Main Course, and taps the dishes. Where a dish sells by portion, Half and Full sit right on the tile with their prices: one tap rings the right one. Tap the same dish again and the quantity on that line goes up; you are not building a second line.

Butter Chicken (Full), Paneer Tikka Masala, Butter Naan ×2, Sweet Lassi ×2: the bill on the right builds as you tap. Recorded on the real Desktop App.

When the menu is long, don't scroll. Type. A letter or two in the search box and the grid narrows to what matches; tap the tile, clear the search, carry on. On a 300-dish menu this is how a good cashier works the whole shift.

Type a few letters, tap the dish, clear. Faster than any category rail once the menu is past a hundred items.

Some dishes ask a question before they go on the bill (how spicy, which portion) and the Desktop App asks it in one sheet rather than making the cashier remember. The answer rides on the KOT to the kitchen, so "less spicy" is on the ticket, not shouted across the pass.

Half is already answered from the tile; the sheet only asks what it still needs. The choice prints on the kitchen ticket.
KOT

Fire KOT, then check the kitchen ticket's print or KDS status.

The bill has a table on it now (Assign table, tap T4) and the cashier presses Fire KOT. That is the moment the kitchen learns about the order: a ticket prints on the kitchen printer (or lands on the kitchen screen) with only what to cook, no prices. The key turns into Reprint KOT with the time it went, and those lines lock to this table's bill.

Assign the table, fire. The key changes over and each line is stamped Sent with the time.

Order more later and the next KOT is built from only the new items. Still check the table and the kitchen-delivery status: a line entered twice or a KOT reprinted by hand can send paper twice. A fired line's quantity can still come down: the table that took three waters and returned one is billed for two, no manager needed. It cannot go up (the kitchen only cooks what a ticket named: a plus opens a new line for the next fire), and it cannot reach zero without a reason. Authorised ordering staff can remove it without a manager PIN; the reason and acting staff member stay in the audit history.

No kitchen printer? Run the Desktop App's Kitchen view on its connected display. A separate Android device signed in with a chef PIN can show all open tickets and Done. In a phone-only counter setup, tickets reach that second Android screen through online sync; the phone counter does not host an offline LAN KDS stream. Configure and test the exact device, role and network before service. The KOT post below explains the choices: KOT machine, printer or software: what you need.

Settle

Verify the payment, record Cash or UPI, then check the bill print.

The table asks for the bill. Settle opens one sheet: what the guest is paying with (UPI, Cash, Card, or Part pay when they split it) and how much they handed over. UPI is the default. First verify a UPI credit in your own merchant or bank app; EasyKOT records the payment method but does not verify or collect it. Then confirm, and the receipt is on screen, already queued to the printer.

Settle → UPI → Confirm. The receipt shows CGST and SGST on their own lines, the total, and how it was paid.

Cash is the same sheet. Type what the guest gave you (₹500 against a ₹472.50 bill) and the Desktop App shows the change to return before you confirm. The drawer kicks open on the settle, and the change is on the screen, not in the cashier's head during a rush.

Type what was handed over; the change due appears before you confirm. Paid (cash) prints on the slip.

What is on the paper: your outlet name, GSTIN, the invoice number in its series, every line, CGST and SGST split, round-off, the total, the tender. The Desktop App puts it there by itself: you set the GST rate once, in the dashboard, on your CA's advice. If the guest wants the bill before paying, press Bill first: it prints what is owed, mints the same legal number, and tells the floor this table is waiting to pay.

Takeaway

For takeaway, skip the table and settle the order.

A parcel is the same flow minus the table. Tap Takeaway at the top before you ring the dishes; the bill says TAKEAWAY, the KOT says it too so the kitchen packs instead of plating, and Settle works the same. One type, no delivery-app screens: a counter order is a counter order.

Takeaway on, two dishes, Settle. The slip reads TAKEAWAY and the kitchen ticket says it too.
Discounts and item removal

The Desktop App applies each role's permissions.

Money coming off a bill is where a restaurant leaks, so the Desktop App is particular about it. In the Desktop App, an owner, manager or cashier taps Discount, picks a percentage or types an amount, and the discount is recorded against their name and adds to the day's Discounts total in the dashboard's Reports. A waiter on a phone cannot do this alone: a discount asked for at the table routes through a manager's PIN, because money coming off a bill from a handset in the dining room is exactly where a second person should sign.

Discount → 10%. The line appears on the bill and the discount is recorded against whoever applied it.

Voiding a dish the kitchen has already cooked is stricter still: a reason from a fixed list ("customer changed their mind", "kitchen cannot make it", "rung on the wrong table", "wrong item rung") from everyone, and a record of the acting staff member. Authorised ordering staff do not need a manager PIN; a restaurant may still use a stricter internal approval policy. The cancelled line stays in the audit history. The post on where restaurants lose cash is the long version.

Night · 11:30

Check reprints, then review Day close.

A guest comes back for the bill they lost. Open Orders, tap the bill, press Reprint. The copy keeps the original invoice number and date and is stamped DUPLICATE with the copy number: a second slip can never be passed off as a fresh bill, and the ledger records who asked for it (not shown on any screen yet).

Orders → Today → the bill → Reprint receipt. The copy keeps bill T1/2627/00001 and its date, and comes off the printer stamped DUPLICATE.

Then the day. Day close lives on the Orders screen: it lists the checks left over from a service that already finished (last night's stray tap, the table that paid but never got settled), lets you discard the empty ones, and asks "Did the money for these checks come in?" for the rest: add the payment, keep it as Paid · Auto closed, or write it off if the guest walked out (manager PIN, reason). It also lists the bills issued today per series with a warning if a number is missing: the thing that costs an afternoon at audit. Tonight's open tables are deliberately not on it; they are still tonight's. The owner's morning email carries the totals; the post on the day-end report says what to look for in it.

Orders → Close them out. Last night's leftovers under No payment recorded, and the question the sheet asks before anything is written. The clip stops before an answer is picked; sample store, sample amounts.

Poora din offline chala. Look at the footer in every clip: "Offline · sales keep working". That is the Desktop App's normal state when the line is dead: it was recorded that way on purpose. When the internet returns, the day syncs to your dashboard by itself; billing with the internet down covers what else keeps running.

Try it

Try the same flow now, without installing anything.

The live demo runs this same Desktop App in your browser on a sample menu with no signup. KOTs and bills open in the browser print dialog, so you can try the flow before installing the Desktop App. When it is time for your own menu: the five signup steps, then connect the printer, put the captain app on the waiters' phones, and print the first GST bill. Three months free, no card.

First-day questions

Straight answers.

How long does a new cashier take to learn it?
Practise one test order first: add items, assign a table, Fire KOT, verify the payment, Settle, and try a reprint. Learning time depends on the cashier's experience, the menu and the printer setup.
What if the internet goes down?
A previously configured Desktop App can keep its menu, orders, KOTs and settlements working through an internet outage. A USB printer still needs power; Wi-Fi/LAN printers and captain phones need the right local network. Data syncs when the internet returns.
Can a waiter take the order at the table?
Yes. A waiter can send an order from the captain app on their Android phone and it joins the bill at the counter. There is no per-phone charge. Connecting the restaurant, pairing with the Desktop App where required, and signing in with a personal staff PIN are separate setup steps.
Will the flow feel familiar to a Petpooja user?
The basic flow is familiar: order, KOT, payment and settlement. EasyKOT currently costs ₹299/month, a previously configured Desktop App can bill offline, and it prints to supported ESC/POS printers. Test your printer and workflow during the trial.
Does a discount need a manager PIN?
In the Desktop App, an owner, manager or cashier can apply a discount; it is recorded against that staff member. A discount from a captain phone routes through manager approval. Removing an item already sent to the kitchen requires a reason and ordering-staff attribution; authorised ordering staff do not need a manager PIN.
Which invoice number and GST details appear on the bill?
Each Desktop App uses its own invoice series (T1/2627/00001), allocated when you press Bill or Settle. Bills use your configured GST settings, with CGST and SGST shown separately. A reprint keeps the number and date and is stamped DUPLICATE. Review a sample bill with your accountant before live sales; the GST guide below links official sources.
3 months free · ₹0 today · no card

Run it 3 months, then pay for it.

Three months free, full product, no card. Made in India, for the counter: built inside a running restaurant.