Every change, printed on the roll.
What changed in the register, the captain app, the owner dashboard, the kitchen screen, printing and this site, dated, newest first. Like our ledger, this page is append-only: nothing here is rewritten later.
- Register
- 0.1.1218 Sep 2026
- Captain app
- 0.2.4 (16)19 Sep 2026
19 SepCaptain app 0.2.4 for Android19 SepA waiter removes a fired item with one confirmation, no manager PIN19 SepThe fire button says what it does: Send KOT18 SepRegister 0.1.12 for Windows and Mac18 SepGST is one choice for the whole store, and every dish follows it
September2026
Captain app 0.2.4 for Android
Download it from easykot.com/download, or install it from Google Play if your phone is on the tester list. It carries the two-column menu, the Send KOT button and confirmation-only removal below.
See it: easykot.com/download → AndroidGuide: Captain app setup on waiter phones →
A waiter removes a fired item with one confirmation, no manager PIN
Taking the last unit of a fired line off a check asks the captain to confirm once and records who did it. A busy floor cannot wait for a manager; the captain is responsible and the removal stays in the check's history. When every item is removed and nothing was paid, the table frees itself.
See it: Captain app → open table → item → Remove
The fire button says what it does: Send KOT
The button that sends a round to the kitchen reads Send KOT with the count of new items, and the menu shows two columns with a separate quantity per portion, so Half and Full of one dish sit on their own lines.
See it: Captain app → open table → Send KOT
Register 0.1.12 for Windows and Mac
Installed tills pick this up on their own. It carries the printer and second-till fixes from the 17 and 18 September wave: a part refund now reaches the other tills, and a Mac register no longer freezes at start-up.
See it: Register → Settings → About, or easykot.com/download
GST is one choice for the whole store, and every dish follows it
Settings → GST takes one answer: Not GST-registered, GST 5%, GST 18% (restaurant in a hotel) or Composition scheme, and every dish picks the store's rate up at every till. A menu whose dishes carry no rate shows a warning on the Menu page with one button, Apply GST 5% to every dish with no rate, counted across the whole menu. Nobody sets GST dish by dish any more.
See it: Owner dashboard → Settings → GSTGuide: Your first GST bill →
A new store starts with GST switched off
A restaurant that signs up today rings dishes at their menu price and prints no tax line, so there is nothing to find in Settings first. An owner who is GST-registered switches it on in the dashboard and the whole menu charges from the next sale, with no dish-by-dish pass. Existing stores are untouched.
See it: Owner dashboard → Settings → GSTGuide: Your first GST bill →
The payment receipt email with the GST invoice PDF now arrives
Paying for EasyKOT sends the owner a receipt with the tax invoice attached. Before this the email never left, while the payment and the invoice themselves were fine. The "we couldn't collect your renewal" email had the same fault and now sends too.
See it: Owner dashboard → Billing
A composition scheme store prints a bill of supply, with no tax on it
Settings → GST takes Not GST-registered, Regular GST or Composition scheme, and says which document that store's bills will be before you save. A composition store's bills come out headed BILL OF SUPPLY with the declaration the law prescribes and no tax rows, and the register and the captain ring every item at 0%. A regular store's bill is now headed TAX INVOICE, prints the rate beside the tax (CGST 2.5%, SGST 2.5%) and ends with the computer-generated signature line.
See it: Owner dashboard → Settings → GSTGuide: Your first GST bill →
Register 0.1.11, and in-app updates that can actually install
Until this build no register could install an update from inside the app: the download failed its check at the end and the strip quietly vanished. 0.1.11 downloads with a progress bar and a Restart to update button, checks again every four hours instead of only at launch, shows its version at the bottom left of the rail, and reaches Macs as well as Windows. A register on 0.1.1 to 0.1.8 has to be reinstalled by hand once from easykot.com/download; after that updates arrive on their own.
See it: easykot.com/download
Dismiss the red print alert for a whole printer outage
One Dismiss covers that printer's outage, so new orders to the same offline printer do not bring the bar back. It returns only for something new: another printer going down, the same printer failing again after it recovered, or a ticket that ran out of retries. No ticket is dropped, and Settings → Print queue still lists every one of them.
See it: Register → Settings → Print queue
Part pay now takes only the amount you type
Arming Part pay used to leave the full bill sitting in the amount box, so pressing Settle collected the whole check with no warning. The box is blank now, and Settle stays disabled, with the reason beside it, until a smaller amount is typed.
See it: Register → Pay → Part pay
Fourteen register fixes: floor, kitchen board and printer setup
A second party seated on an occupied table now shows under Counter & parcels instead of disappearing, bumping a ticket clears it from the kitchen board at once, and Remove on a printer asks first, naming the printer, its address and role. A till with no printer saved shows its stuck queue in the tickets bar rather than leaving the jobs invisible, and a barcode scanner can no longer keep ringing up sales past the subscription lock.
A disconnected register says so instead of blaming the Wi-Fi
Revoke a till from Devices and it now reads "This register was disconnected by the owner", points at Settings → Register, and offers Connect this register on the lock screen. Selling keeps working offline and no unsynced sale is touched. "Sync failed" also means sync failed now: at every boot the register used to report a clean sync without reaching anything.
See it: Owner dashboard → Devices
A part refund taken at one till now shows on the other tills
Refund part of a settled bill at the counter and the second register, or the captain's phone, now shows it. Until now the other terminals dropped every partial refund and every part payment, so one till said refunded ₹200 and the next still said paid in full.
A crash while printing leaves the ticket on the queue, not lost
Force-quit the register with a KOT going to a hung printer, reopen it, and the job appears under Settings → Print queue as "may have printed", with It printed and Print again. It used to sit at Printing forever with both buttons dead. A printer moved from Kitchen to Receipt also stops taking that station's KOTs, which it used to keep doing silently.
See it: Register → Settings → Print queueGuide: Thermal printer not printing — 9 fixes →
The bill on screen is the same document as the bill on paper
A GST-registered store's settle preview now reads TAX INVOICE and carries the address, state, GSTIN and FSSAI line, matching the slip the printer produces. It used to say BILL over its own CGST and SGST rows. A store with no GSTIN saved under Invoice identity still says BILL, on both.
Captain app: nine fixes, from PIN guessing to an honest printer check
Five wrong manager PINs on a phone now cost time, climbing to a minute, whether they were typed on the sign-in pad or the approval sheet. Check printer stops claiming a Bluetooth printer accepted a connection when nothing ever knocked, a test print whose link drops no longer marks a working printer offline, and a dish taken off stock while a portion sheet is open can no longer be rung up. A waiter who glances at a notification and comes straight back is still connected.
See it: Captain app → Device
Nine fixes to the register's money, kitchen board and bill numbers
A dish whose portions are all out of stock is refused by name instead of selling at the seed price, two people hitting Fire on the same table no longer send the first round to the pass twice, and two tills opened together cannot collide on KOT numbers. A table settled on a captain phone now prints a bill carrying a real invoice number in the till's own series, with its issue date. A check voided on a phone while the till takes cash for it stays settled, and the day's takings keep the money.
The owner dashboard fits a phone
Below tablet width the sidebar folds into a Menu button and every page gets the whole screen instead of the strip beside the rail. Tap Menu and the same navigation slides in from the left. The Invoice identity card is full width again, so a 14-digit FSSAI number can be read.
See it: Owner dashboard → Menu
Import with AI is its own card, separate from the template upload
Drop a PDF, photos of the printed card, or a spreadsheet in your own layout with no required column names, and the AI reads it while you review every dish before anything saves. Use our template sits below it: our columns, parsed instantly, free, no AI, and a sheet without a name and a price column is turned away with a pointer to the AI card.
See it: Owner dashboard → Menu → Import with AIGuide: Menu setup & AI import →
A printer set up with Detect printers prints again
A printer that answers a status query with its own name (a real Epson, a TVS) used to break its own setup: every receipt, KOT and drawer kick failed before it was even queued, and nothing warned you. Sales recorded, kitchen silent, no bill. Settings → Printers & KDS also loses the Share printer diagnostics card.
See it: Register → Settings → Printers & KDSGuide: Connect a thermal printer →
Signing out lands on Welcome back, not on Create your store
An owner who signed out used to be shown the signup panel again, in effect asked to create a second store, until the page was reloaded. Start free on easykot.com now also opens Create your store in a tab that already had the dashboard open.
A refund on a subscription payment reaches the Billing page
A full refund, or a bank dispute lost, now marks the invoice Refunded, takes the paid period away and drops the register back to trial or grace. Before this a refunded owner kept the month for free and nothing recorded it; a partial refund is recorded against the payment. Paying again after a declined card in the same window now says the payment succeeded instead of failed.
See it: Owner dashboard → Billing
One refund promise everywhere: our mistakes yes, change of mind no
The three free months are where you decide. A paid period, monthly or yearly, is yours from the day it starts and is not refunded; we refund our own mistakes, such as a duplicate charge, a charge after cancelling, or a fault we cannot fix. The 7-day change-of-mind refund is gone from the refund policy, the pricing page and the fine print under the pay button.
Register 0.1.7: discount, write-off and FSSAI lines on the bill
Installed tills update themselves to this build. It carries the discount and written-off rows that make a bill add up, the FSSAI licence line under the address, and GST charged on the discounted price. A till goes from 0.1.4 straight to this one.
See it: easykot.com/download
GST is charged on the discounted price, not the full one
A discount comes off the food's taxable value and GST is charged on what is left, which is what the store actually owes (CGST Act s.15(3)(a)). The guest pays the same total: 10% off a ₹189 bill reads Discount ₹18.00 and GST ₹8.10 instead of ₹9.00, total ₹170.10 as before, and the bill reads Subtotal, Discount, Taxable value, CGST, SGST, TOTAL. Bills discounted before this build keep the tax they were issued with, and a discount can no longer take a part-paid check below what was already paid.
Captain app 0.2.3 for Android
Install it from Google Play if your phone is on the tester list, or download the same release from easykot.com/download. It carries the honest kitchen status below.
See it: easykot.com/download → AndroidGuide: Captain app setup on waiter phones →
The captain stops calling a delivered round "Not sent to kitchen"
On a phone with no counter laptop paired, only rounds still waiting on the handset get the red Not sent to kitchen warning, and it clears itself a few seconds after the connection comes back. A round that has left the phone but no counter has taken reads a calm Sending to kitchen, and Sent to kitchen now means a register has picked the ticket up. A waiter following the old warning would have had the kitchen cook a dish twice.
See it: Captain app → open table
A table settled on the phone prints a clean first bill at the till
Cash or UPI taken on the captain's phone now prints the paid receipt at the counter as the original, the same paper the register hands over at its own settle. Every one of those first bills used to come out stamped DUPLICATE, COPY 2, and counted as a reprint on the audit. A reprint is still something a person taps, and it still says so.
A discount and a written-off amount now print on the bill
A discount prints as its own row between the tax lines and TOTAL, so the rows add up to the total. A check settled short keeps the full TOTAL, prints what was paid, then Written off under it. The on-screen receipt shows the same rows as the paper, including Round off, which only the paper used to print, and reprints and the captain's bill carry them too.
The FSSAI number prints on every bill
Type the 14 digits from your certificate under Invoice identity and they print under the address on every bill, GST or not, on reprints and on the captain's bills. The label follows the first digit, so nobody has to pick between Lic. No. and Reg. No., and a number that is not valid is never saved. Until it is saved the field says it will print, not that it does.
See it: Owner dashboard → Settings → Invoice identity
Captain app 0.2.2: Bluetooth prints one copy, not two
A KOT, a bill or a test page sent from an Android phone over Bluetooth used to come out twice, and the job then sat under Printers saying it may or may not have printed. One copy now, and the job reports that it was sent. The same build gives the phone's back button a step back and shows on the Device tab the version you actually installed.
See it: Captain app → Device → Printers → Test printGuide: Bluetooth printer + Android phone →
Android's back button goes to the previous screen, not out of the app
Back, or the back swipe, now steps back one screen: an open order returns to the floor, the settle sheet returns to the order, a setup form returns to the step before it. A table you opened and left without adding anything stays free, with no empty order behind it. Screens with nothing behind them still close the app, as before.
The download page is open to everyone, with the first-open warnings
easykot.com/download lists the current Windows .exe, Mac .dmg and captain .apk, always the newest release, with no access key. Clicking a download opens a panel showing the exact screens Windows and macOS put in front of an unsigned app and which button to press, with a copy button for the one Mac command. Show the steps reopens it without downloading again.
See it: easykot.com/download
The price carries its GST line, and the invoice is a tax invoice
EasyKOT is billed by KODEYARD under GSTIN 27DVXPS0694K1ZF, so every price on the site reads with its tax, and each charge produces a tax invoice with the supplier's registration on it, not a plain receipt.
Captain app 0.2.0: the first run asks one question
What will this phone do: run the counter, or take orders at the tables. The three-step enrol, pair and PIN sequence is gone, and the answer decides the rest of setup. A phone that runs the counter prints KOTs and bills itself, and setup now scans the QR instead of pasting 140 characters.
See it: Captain app → first openGuide: Captain app setup on waiter phones →
A cash box on the register: float, paid-outs and a blind count at shift end
Start the shift with a float, write a paid-out as it happens (₹450, vegetables), then close the shift: you type the counted cash first, and only then does the register show expected, counted and the difference in words, balanced or short by ₹100. Cash sales stay hidden until you have counted. Day close's first section points at a shift that is still open.
See it: Register → Orders → Cash box
Yesterday's bills at the till: open an earlier day, view it, reprint, refund
Orders has an Earlier tab: pick any business day, search by table, order number, bill number, dish or amount, and open a settled bill to read the receipt on screen beside Reprint and Refund. Each settled row shows how it was paid, Cash, UPI, Card or Split. The customer who comes back with yesterday's slip is answered at the till now.
See it: Register → Orders → Earlier
A refund needs a manager's PIN, not the cashier's own
Approving a refund asks for a manager's or the owner's PIN, and a cashier's PIN is refused, including the cashier who rang the bill. Whoever approved it is recorded on the refund.
See it: Register → Orders → a settled bill → Refund
The dashboard opens with last night in one line
Net sales before GST, order count and average bill for yesterday sit above today's cards, and the cards now name the day they mean. A brand new store's drill-downs land on the reports with a card telling you to start your first period, instead of a bookkeeping form and nothing else.
See it: app.easykot.com → Dashboard
A second till and the phones stay live on the shop network
Every order, fire, bump and settle rung on a joined register reaches the main till's Orders, Floor, kitchen screen and printer without a refresh. A joined till used to disappear from the main till, and both printed. Wi-Fi that drops and comes back reconnects on its own, and the main till's badge counts the phones and tills actually on it.
See it: Register → Settings → Multi-terminal
Register 0.1.4, with the start-up dialog and the first week of September
Installed tills pick this up through the updater. It carries the dialog that now appears when the window will not load, and the fixes from the first week of September.
See it: Register → Settings → About
A register that fails to load now says so, with Try again
If the window comes up blank, after 60 seconds a dialog explains in plain language that no sales were lost and the till is not damaged, and offers Try again, Keep waiting or Quit EasyKOT. It used to stay blank forever with nothing to press.
Set up a phone by scanning the QR the dashboard shows
The captain app's first screen leads with Scan the setup QR: point it at the code under Devices, Add device on the owner dashboard and the phone connects in one motion. The 140-character paste box is still underneath. The dashboard row turns to connected by itself once the code is used, instead of waiting over a code that already worked.
See it: app.easykot.com → Devices → Add deviceGuide: Captain app setup on waiter phones →
Skipping setup on a new phone reaches the demo menu
On a fresh install, the skip that offers the demo menu landed on the pairing screen with no code, no way forward and no way out. It reaches the demo menu now, and a re-pair opened from the Device tab can be cancelled.
The password reset link from the email works
Clicking the reset link said the link is incomplete, for every valid link, which locked out any owner who forgot a password. The form now opens and the new password sets.
See it: app.easykot.com → Forgot password?
EasyKOT Captain is on Google Play, for testers
Up to 100 people on the tester list can install the captain app from the internal-test link, with no wait. It is not public on Google Play yet.
Register 0.1.3, the first public build for Windows and Mac
The first build anyone can download and install, and the first that later releases can update on their own. The Mac build runs on both Apple Silicon and Intel.
See it: easykot.com/download
A till must reach the internet once every 30 days, and it warns from day 20
From 20 days without a completed sync the register dims a shade more each day and offers one Sync now button; on day 30 it stops selling until a sync lands. A till that is online never sees this, because the register syncs on its own. When a store's subscription lapses the banner says cloud sync is paused, offline sales carry on and nothing is wiped.
The captain app no longer asks to draw over other apps
The installed app no longer asks for the draw over other apps permission, which it never used. It came from the default Android template, not from anything in EasyKOT.
Printer setup asks which roll it takes, and the test slip proves the answer
Adding a printer asks 58mm or 80mm before Save printer and Print test page become tappable, with a line saying 58mm is about three fingers wide and 80mm is the usual bill. The test slip prints a row of digits exactly as wide as the size you chose, so a wrong answer wraps onto a second line and the slip names the setting to change. The captain app asks the same question.
See it: Register → Settings → Printers & KDSGuide: Connect a thermal printer →
Dashboard: how today is going, the moment you sign in
Sales, orders, average bill, what is still open on the floor, how you were paid today and your top sellers, with no period to pick. Every figure is compared against the same weekday last week, because a Saturday is worth several Tuesdays. It re-reads itself every minute while the tab is in front.
See it: app.easykot.com → Dashboard
Adding an expense is one screen and, for the usual costs, three taps
Press Add expense and the amount box is already focused. Chips built from your own last six months fill in who, what and how you paid it last time, twenty-three common restaurant costs file themselves under the right heading, and typing bijli bill or kiraya picks the category for you. Any row can be opened and edited afterwards.
See it: app.easykot.com → Expenses → Add expense
Accounts: your weekly sheet as a period you open, close and carry forward
Start a period with the cash in the business and you get six figures across the top: sales collected, online payouts, expenses paid, staff paid, profit, and the cash carried forward. Type the aggregator payouts and the money you took out, write a note on the period, then close it; the next one opens by itself at the closing balance. A bill logged into a closed week shows what changed and offers Recalculate rather than rewriting anything silently.
See it: app.easykot.com → AccountsGuide: Weekly accounts →
Staff pay, advances, and a labour cost that is a real number
Set a monthly salary, daily wage or hourly rate on anyone, give an advance mid-month, and Pay salary arrives prefilled net of it. Labour then shows the accrued cost of the days that have happened so far beside what you actually paid out, and each expense records where the money came from: cash, bank or UPI, the owner's pocket, or not paid yet. Every report carries the same period picker and says how fresh its numbers are.
See it: app.easykot.com → Staff & pay
The printer row says what is actually wrong, and a failed bill asks you what to do
Paper running low, Paper out, Cover open, Cutter jammed, Printer paused, Offline, or a router keeping devices apart: each read from the printer's own reply, in English with a Hindi line, and a printer that answers nothing is never shown green. If the bill printer is down at settle, the sale is saved first and you are offered Retry now, Fix printer, another printer, or keep it for reprint. Check printer runs five tests with a guided fix, and a printer that moved overnight is found again on its own.
See it: Register → Settings → Printers & KDSGuide: Thermal printer not printing — 9 fixes →
Kitchen stations: bind a printer to a corner and one fire prints one ticket per corner
Tandoor food goes to the tandoor printer and the rest to the main kitchen, from a single Send KOT. If a station printer is dead the ticket hops once to the backup, and the dashboard can email you when a kitchen printer has failed five jobs in a row mid-service.
See it: app.easykot.com → Settings → Kitchen stationsGuide: Kitchen stations — split one order across corners →
Register, Orders and Kitchen switch instantly, and the cart keeps its place
Screens stay alive once visited, so moving between them is a show rather than a rebuild of a 300 item grid; the cart, the search box and the scroll position survive the round trip. The "Your store has no menu yet" banner stops flashing on every switch, cart lines wrap to two lines before truncating so two chicken dishes are told apart, and money on a floor tile wraps instead of clipping to ₹1,5.
See it: Register → Orders → Kitchen
August2026
A locked register has a way back in, and PINs can be reset from the dashboard
Type your PIN on the keyboard, and if nobody present knows one, Can't sign in? offers three doors in order: an owner or manager PIN (works with no internet), the owner's email and password, or connecting the register again. The dashboard finally has a Staff page to see the roster, add people and reset any PIN including your own, plus a forgot-password flow. A till enrolled to an account nobody can open any more can erase itself and join a different restaurant, and unsynced sales block that reset until they are uploaded.
See it: Register → Lock → Can't sign in?Guide: Staff PINs & roles →
Your night counts as one night: the trading day starts at 4am
A kitchen serving until 2am used to have its takings split across two report dates. Sales, bill numbers, the kitchen ticket window, labour hours and a late-night expense now all roll at 4am, and Settings has a card, When your day ends, to move that between 12am and 6am with a worked example that changes as you pick. The morning summary arrives at 8am and holds if a till that was selling last night has not synced yet, waiting until noon at the latest and then naming the till that stayed dark.
See it: app.easykot.com → SettingsGuide: Owner reports & daily summary →
Switch off the daily summary or the day close email
Settings → Notifications adds switches for the daily summary and the day close email, both on by default. A receipt and a renewal notice always send, because one is a tax document and the other is what keeps the register on. Every EasyKOT email now looks like EasyKOT rather than a plain default.
See it: app.easykot.com → Settings → NotificationsGuide: Owner settings — GST, day end and emails →
Each kitchen screen picks what it cooks
A checkbox row at the top of every kitchen screen lists Everything plus your top level menu categories. Tick Tandoor on the tandoor corner's screen and it sees only tandoor rounds, in the tickets, the prep lane, the all day counts and that device's Kitchen badge. A ticket that also carries another corner's food says so and its button becomes Done here, which clears only that screen. Ticking nothing is the whole kitchen, so a single screen store sees no change.
See it: Register → KitchenGuide: Kitchen display (KDS) setup →
A settled bill rings, parcels carry their handle, and a printer phone stays awake
A settle now plays a three note sound, distinct by ear from the new order ding, with its own switch under Settings → Register. Takeaway cards on the captain floor show their order handle so two parcels are told apart, the Device tab names the phone the way a manager sees it, and Android offers to open battery settings while phone printing is on. The captain's veg and non-veg marks now use the same brown and green as the printed bill.
See it: Register → Settings → Register
The owner dashboard is live at app.easykot.com
Sign in from any browser on any device: no install, no terminal. Devices is the tab to start with, because it mints the setup codes that enroll a till or a captain phone, and a price you edit under Menu reaches the register and the phone by sync.
See it: app.easykot.com → DevicesGuide: Set up your restaurant — signup to first bill →
The Floor screen answers at a glance, and Orders stays fast for the life of the store
A table that needs attention wears one small amber chip on its corner, with a count when several stack, instead of three badges spilling onto the row below. Counter and parcel cards are a uniform height with the money on the right and never clipped, and a stale check reads 26d 20h rather than 644h 33m. Orders and the kitchen board keep a rolling window of history per device, so a two year old store opens as fast as a new one.
See it: Register → FloorGuide: Table & floor plan setup →
The register dings when an order arrives that it did not ring
A captain fires from the phone and every register and kitchen screen in the store plays a two note chime as the order lands, over the internet or over the shop's own Wi-Fi. Your own orders on that till stay silent, a locked register still chimes, and it is off with one switch per device under Settings → Register.
See it: Register → Settings → Register
A settled check leaves the kitchen screen without a bump
Settle from the captain or the register and the check's tickets clear off every kitchen screen within seconds, so the Kitchen count stops climbing with rounds nobody is cooking. It applies to dine-in and parcel alike. A counter shop where people pay before the food is cooked turns off Clear kitchen tickets on settle under Settings → Register, and every ticket then waits for the chef's bump.
See it: Register → Settings → RegisterGuide: Kitchen display (KDS) setup →
Prep lane: cook one dish once for every table that ordered it
A third view on the kitchen screen, Prep + tickets, docks a production lane beside the tickets: 3 · Veg Fried Rice · T2 · T5 · T7, count first and then where each plate goes. Press a row and every ticket it feeds lights up on the rail. Only identical prep merges, a line with a cook's note is split out on its own with the note shouted, and each batch wears its oldest table's clock so batching can never hide a late table.
See it: Register → Kitchen → Prep + ticketsGuide: Kitchen display (KDS) setup →
An iPhone prints KOTs and GST bills to a Wi-Fi thermal printer
Add a printer by its IP on the Device tab, run a test print, then arm Print from this phone with a manager PIN, and KOTs and bills print from the iPhone while the app is open. The app says the limit out loud: an iPhone cannot print in the background, so a dedicated printer phone is still an Android, and Bluetooth printers remain Android only because Apple allows only its certified models.
See it: Captain app → Device → Add printerGuide: Connect a thermal printer →
Drive the real register in your browser at easykot.com/demo
No signup and no install: a 212 dish menu, punch an order, fire the KOT, settle by cash, UPI or card and read the GST receipt. It is the register itself, so your demo order survives a refresh and even airplane mode, and the screens that need hardware say so in plain words rather than looking broken. It needs a laptop sized screen; a phone gets a WhatsApp demo card instead.
See it: easykot.com/demo
Seating a table that already has a running check asks first
Pick an occupied table and the register names the money on it ("T1 is running a ₹240 check. Seat anyway?") and still lets you go ahead, because big parties do get shared. A brand new store now opens with five tables, T1 to T5, instead of an empty floor.
See it: Register → FloorGuide: Table & floor plan setup →
KOTs and bills stop printing the logo, so the paper goes to the ticket
Thermal paper is for the order and the numbers, not a header. The logo is off both the kitchen ticket and the customer bill.
A phone can run the restaurant: print KOTs, print bills, keep a cash shift
The captain app prints KOTs and GST bills straight to the store's thermal printer over Bluetooth or the shop Wi-Fi, so a service can run with the laptop switched off. Arming the phone as the store's printer takes a manager PIN; turning it off is one tap, because a jammed printer at rush is an emergency. Android only, and the phone must be enrolled as a register for its bills to carry an invoice number.
See it: Captain app → DeviceGuide: Run a POS without a laptop →
The phone works away from the shop Wi-Fi, for the waiter and for the chef
A waiter in the corner the Wi-Fi never reached, or on mobile data, still gets the round to the kitchen, and a chef on cellular data sees the board and can clear a ticket from it. The phone picks the road itself: the register's Wi-Fi first, the internet second, the phone's own storage if there is neither. A round travelling over the internet no longer carries the red warning that the kitchen never got it, and the red is kept for a phone where rounds really are piling up.
A refund reaches your books, and a reprinted paid bill says DUPLICATE
Refunding a settled bill used to print a slip and silently drop the entry: the customer had the cash and your books never knew. Refunds now reach the server with the name of whoever processed them, a reprint of a paid check is marked as a copy and shows the check as paid, and a discount records the manager who approved it. One corrupt order can no longer stop every kitchen ticket and bill in the store.
The EasyKOT mark is on every screen, every installer and every printed slip
The register window, the captain app icon and the dashboard rail carry the real lockup instead of a placeholder, and KOTs, bills and the printer test page get a one colour thermal header sized to the paper. It prints on every ticket for now, which is about 14mm of a 58mm roll.
A Kitchen button on the register, with a live count of open tickets
The register header carries the kitchen's open ticket count: grey when the pass is fine, amber past half your KOT SLA, red past it. Tap it for the same board the kitchen sees, bump a ticket, and come straight back to the till. The board itself is now a rail of fixed-width tickets that fill top to bottom then grow to the right, so the oldest is always top left and a rush scrolls sideways.
See it: Register → KitchenGuide: Kitchen display (KDS) setup →
Get started opens on the register download for your own computer
A fresh signup sees the Mac or Windows installer first, whichever it is reading from, and clicking one ticks the step and moves on to the menu while the installer runs. Until the installer links are published the step waits quietly and the menu stays step 1.
See it: Dashboard → Get started
EasyPOS is now EasyKOT, on every screen and on the paper
The register window, the captain app, the dashboard, the receipt and KOT headers, the GST tax invoice and the payment screen all read EasyKOT. Tax invoice numbers change prefix from EP/2627/000042 to EK/2627/000042. Every terminal on a store's network has to be upgraded together, because an old build and a new build cannot find each other.
Three months free, then ₹299 + GST a month or ₹2,990 + GST a year plus 18% GST
Every new store gets three calendar months with no card. After that you pay from the dashboard by UPI AutoPay or a card mandate, and every charge produces a GST tax invoice with CGST and SGST split out, emailed and downloadable. If a payment lapses there are 30 days of grace with full access: the register dims from day 20 and goes dark on day 30 with a Renew button on it.
See it: Dashboard → Manage → Billing
Pay once with any UPI or card, or set up auto-renewal
Many Indian cards cannot authorise a recurring charge under RBI rules, so Billing opens on Pay once: one period, no mandate, any UPI, card, netbanking or wallet, landing on the same GST invoice and the same access. Pay again and it stacks onto the end. The page prints the plan you are about to buy as a receipt, with the GST, the dates the period covers and what it works out to per day, and a Subscribe button that cannot work now says why beside it.
See it: Dashboard → Manage → Billing
A real GST tax invoice on the paper, with its own number
Three numbers now exist, minted at three moments: the spoken order handle when the check opens, the KOT number when the round is sent, and the invoice number at the first bill print or settle. The printed bill carries your GSTIN, address, state code, the invoice date and the CGST and SGST split, which you fill in once under Invoice identity. A reprint says DUPLICATE, keeps the same number and records who asked for it.
See it: Dashboard → Settings → Invoice identityGuide: Your first GST bill →
A Bluetooth or serial printer that is off fails in 10 seconds, with a hint
Test connection and Test print used to hang forever on a printer that was off, out of range or broken, and every queued KOT and bill for it froze with them. They now come back inside ten seconds saying what to try: toggle Bluetooth off and on, power-cycle the printer, or pair it again. You can also set the baud rate on a serial printer, which was fixed at 9600 before.
See it: Register → Settings → Printers
Assign a table on your own floor plan, not from an alphabetical list
The room you laid out in Settings is what the register shows when you assign a table, with seated tables tinted and carrying their timer and running total. Press and hold a table for its own actions: open the check, move the party, print the bill, set the guest count. A table whose bill is printed goes green and says BILLED, and drops back to seated the moment they order another round, because that paper is now wrong.
See it: Register → FloorGuide: Table & floor plan setup →
Every row in Orders says something, and an unpaid check has a way to end
A row now carries the table, what is on the check, what still needs doing, how long it has run and what it is worth, and search reaches a check by table, order number, amount or a dish on it. Open splits into Running now and From earlier days, so last week's service stops sitting on top of tonight's tables. A day close sheet bins the empty checks in one tap and writes off the never-paid ones behind a typed reason and a manager PIN, while a check that took money cannot be closed there at all.
See it: Register → Orders
The captain app is one product: a floor board, a Device tab and guided setup
Every open tab is a card, oldest first, carrying what it owes, how long it has sat and whether a round is still waiting for the kitchen, with a coloured edge past 45 minutes. Free seats a party from free tables only, because two tabs on one table is how a party gets billed twice. Device explains which register the phone is linked to and how many rounds are held on it, and setting a phone up is now one question at a time instead of three forms on one screen.
See it: Captain app → FloorGuide: Captain app setup on waiter phones →
Point the phone's camera at the till to connect it
The register's Multi-terminal screen leads with the address a phone can actually dial, this machine's own network address with the port, and shows a QR beside the code that carries both together. The old screen showed an address no phone could reach. Typing still works everywhere, for a denied camera, a cracked lens or a tablet without one.
See it: Register → Settings → Multi-terminalGuide: Captain app setup on waiter phones →
New owners land on Get started, not a dashboard of zeros
One step is open at a time, in the shortest order to a printed bill: menu, then register, then first sale. A sample menu loads in one click, the setup code is minted on the screen with a Copy button, and the steps tick themselves when the till connects and when the first sale rings, with no refresh.
See it: Dashboard → Get startedGuide: Set up your restaurant — signup to first bill →
Choose which day your reporting week starts on
Weeks were fixed to Monday. Pick a day in Settings and the card tells you what you get, for example weeks running Wednesday to Tuesday, and every This week and Last week preset on every report uses that boundary. No sale moves, only which week it is counted in.
See it: Dashboard → Settings → Reporting weekGuide: Owner settings — GST, day end and emails →
The register is rebuilt, with three themes and panels you drag
Monochrome, Midnight and Warm Paper, a category sidebar, menu grid and cart you drag to the widths you want, and four density stops that carry type size and tile height for a laptop or a touch screen. The veg, non-veg and egg marks keep their legal colours in every theme, on a white plate when the surface is dark.
See it: Register → Settings → Appearance
Half and Full are portions of one dish, not two dishes on the menu
A dish carries its portions with their own prices, and the portion rides the ticket line and the KOT as its own label beside the name, so the kitchen cannot cook the wrong size. Tapping a portion key on a dish that needs a spice level or an add-on now opens the chooser with that portion already picked, and a scanned or quick-added portioned dish can no longer ring at the base price with no portion at all.
Settle handles exact, short, over and part payments from one amount box
Type what the customer handed over and the register decides what happened: exact settles the check, short asks whether the gap is a discount or a loss, over shows the change due, and a part payment leaves the check open with the customer's name and phone recorded against it. The balance follows from the ledger, so nothing is typed twice.
See it: Register → SettleGuide: Settling a bill & change math →
86 a dish from the till, and the tile stays on the grid greyed out
A searchable list with a switch per dish lets a cashier stock out a sold-out item without opening the dashboard, and it works with the internet down. The tile stays visible and disabled rather than vanishing, because what is on the menu and what you can sell tonight are different questions.
See it: Register → Settings → Menu stock
Draw your room in the builder, then seat a table by tapping it
A table now has a position, a size and a shape, so Settings has a plan you drag your dining room onto, floor by floor. The Floor tab draws that plan instead of a grid of orders, and tapping a free table seats a party on it.
See it: Register → Settings → Tables & floorsGuide: Table & floor plan setup →
A waiter can take orders on a phone, and the register prints them
The captain app signs a waiter in on their own PIN, shows the floor and the menu, and puts a round on the kitchen printer or the kitchen screen over the shop Wi-Fi. A full order taken with the Wi-Fi off reconciles when the phone rejoins, with nothing lost, and a waiter and a cashier working the same table add up instead of overwriting each other. Every order event now names the person who made it.
An owner dashboard on the internet, with the whole menu in it
Sign in from any browser to add categories, dishes, modifiers and taxes, stock an item out, and import a menu from a spreadsheet. Changes reach every till on their own, and editing does not stop because a register is offline.
See it: Dashboard → Menu
A second till and a kitchen screen on one shop network, with staff PINs
One register leads on the store's network and the others join it, so an order rung on one is on the other in near real time with the internet off, and both converge on the same numbers when it returns. Staff sign in on a PIN checked against the till's own database, so sign-in works with the cable out, and a chef's PIN opens the kitchen screen and nothing else.
See it: Register → Settings → Multi-terminal
A till joins a store with a one-time code, and its database is encrypted
A register gets its own credential from a single-use setup code minted in the dashboard, and that credential can be revoked from there without touching the other tills. The till's own database is encrypted on the machine, so a copied file reads as noise rather than as your sales.
June2026
Thermal printing over network, USB, serial and Bluetooth, plus a kitchen screen
A receipt prints with items, modifiers, the CGST and SGST split and the total, on 80mm and 58mm paper, and the cash drawer kicks on a cash settle. Detect printers sweeps the network, USB and the serial ports so one tap fills in the host, port or path, a failed print queues and retries instead of losing the sale, and a barcode scanner adds a scanned dish to the cart. Any tablet on the shop network can open the kitchen board from the register, see a round land in under a second and bump it when the food goes out.
See it: Register → Settings → PrintersGuide: Connect a thermal printer →
Dark mode, and a register you can resize
The categories, the menu grid and the cart are three panels you drag to the widths that suit your screen, and the app remembers them. A one-tap toggle switches light and dark, following the machine's own setting to begin with. Voiding a line records the void instead of erasing the line, so the history of the check stays readable.
The first register: ring a sale and settle it in airplane mode
Browse the menu, add dishes with their modifiers, assign a table, send the round to the kitchen, settle by cash and see the receipt, with the network cable out the whole time. The check lives in the till's own database and syncs to the server when it reconnects.
Written on the day, from the change itself.
Every row is written from the pull request that shipped it, on the day it reached the main branch, and it is not rewritten afterwards: a mistake gets a new row that says so. A release row appears when the build is on updates.easykot.com, the same file every installed register polls, and the two version stamps at the top are read from there each time this page loads. Screenshots are captures from the running app, never drawings. What the product is not yet is on the story page, in plain words.
3 mahine chalao, phir paisa lagao.
Three months free, full product, no card. Made in India, for the counter: built inside a running restaurant.