One tap from session to bill · CGST + SGST, per line
The one screenyour customers see.
Everything else in this product is for you. The invoice leaves the building with your café's name on it · so it is numbered, itemised, split for GST the way the rule actually asks, and on your customer's phone before they have left the counter.
Section by section
One bill,end to end.
The same invoice all the way down: the two stations it was ended from, the document your customer opens, the tax underneath it, how it gets settled, how it reaches them, and the row it leaves in your ledger. The tax figures are computed by the module your real bills run through, not typed into this page.The café and its customers are invented · an invoice is the most identifying document a café holds about somebody, and no real one appears here.
End, bill and paid on one screen
What happens between a session ending and money changing hands
Press End and the clock stops, the station is free for the next customer, and the bill opens right there. Add their snacks or another charge, give a discount with its reason, put a walk-in's name on it, then generate the invoice. Mark as paid sits on the same screen, by cash, UPI, card, a split or the member's wallet, and once it's paid the bill goes to them on WhatsApp. Two friends on two stations end together and get one bill, and a friend who finishes early can wait for the other without holding a station.
- checkThe station frees the moment you press End, not when the bill is paid
- checkSnacks, another charge, a discount and the customer's name, all before the number
- checkEnd together · several stations onto one bill
- checkWaiting for a friend · an early finisher's bill joins the other's when it ends
What changesYour busiest hour stops being gated on how fast somebody can find their wallet.
Live Ops
Two friends, two stations, one bill · ended together, billed at the station, paid on the same screen.
What your customer actually receives
The one screen of this product your customers will see
Every End closes into a numbered invoice with your café's name on it, the lines itemised, the tax named and a total that adds up. This is the whole of it · not a mock-up, and not a cropped detail. It is what opens when they tap the link, and what prints when they take the PDF.
- checkSequential numbers · the same series your accountant follows
- checkLines itemised by what they are · gaming, food, membership
- checkYour own sign-off at the foot, or a sensible one if you never set it
- checkWalk-ins get a bill too · a customer without an account is still a customer
What changesYou stop handing out a scribbled figure and start handing out something that looks like a business.
Invoice
INV-2026-0912
Billed To
NEON_DRIFT
Issued
07 Sep 2026
Paid Via
UPI
Thanks for playing at Apex Gaming
Generated with Respawna · respawna.com
What the customer opens · the same document at respawna.com/i/… and in the PDF, with no login between them and it.
GST split the way Rule 46 asks for it
Whether this invoice survives being looked at properly
“18% GST” is a thing people say, not a thing that appears on a compliant invoice. Tax is shown by component and per line: CGST and SGST listed apart when the customer is standing in your room, IGST when the supply crosses a state. HSN and SAC codes where you have set them, and a place of supply frozen at the moment of issue, because a café can move.
- checkCGST and SGST apart on intra-state, IGST on inter-state · never both
- checkComputed per line, so two rates on one bill still add up
- checkHSN and SAC per line, blank rather than wrong when unset
- checkTurn GST off entirely if you are not registered
What changesThe bill you hand a corporate customer is the same bill their finance team accepts without a phone call.
18% · intra-state
| Line | HSN / SAC | Taxable | CGST 9% | SGST 9% |
|---|---|---|---|---|
| Gaming PC · 2h 10m | 998439 | ₹210 | ₹18.90 | ₹18.90 |
| PlayStation 5 · 1h | 998439 | ₹150 | ₹13.50 | ₹13.50 |
| Cold Coffee | 2202 | ₹180 | ₹16.20 | ₹16.20 |
| Maggi | 2106 | ₹60 | ₹5.40 | ₹5.40 |
| Total | ₹600 | ₹54 | ₹54 | |
Place of supply
32 · Kerala
Frozen at issue · a café can move
Tax charged
₹108
CGST + SGST, split apart
Reconciles
₹108
Halves sum to the tax exactly
Why the halves are derived, not rounded twice
Take a line at ₹123.50. 18% of it is ₹22.23 · an odd number of paise, so half is not a whole one.
Rounding each half
₹22.24
A paisa more tax than was charged
Half, then subtract
₹11.12 + ₹11.11 = ₹22.23
Reconciles against the invoice
Computed by lib/gst.ts, the module your café's real invoices run through · not typed into this page.
Cash, UPI, card or wallet, and one bill split between them
How the money actually comes in at an Indian counter
Cash, UPI, card, or the member's own prepaid wallet, pressed on the same screen the bill was made on. A bill can also be split across methods · three hundred in cash and the rest on UPI is an ordinary evening, and the parts are stored rather than written into a note, so your month's cash figure still knows about the cash. Friends on one bill can pay by seat.
- checkCash, UPI, card and wallet, each recorded as itself
- checkSplit one bill across methods, or pay it by seat, with the parts kept
- checkWallet settlement is one database transaction · it cannot half-happen
- checkA discount is given at End with its reason, as a real line, not a fudged total
What changesYour end-of-day cash count matches the console, because the console was told what was cash.
One bill, two methods
- cash₹300
- upi₹228
The parts are stored, not written into a description · so the month's cash figure still knows about the ₹300 that came in as cash.
Paid from the wallet
The debit, the settle, the loyalty points and the revenue row happen in one database transaction · a wallet that empties without the bill closing cannot occur.
The SPLIT pill is the console's own component · hover or tap it and the parts are there, exactly as they are at the counter.
It reaches them on WhatsApp
How a bill gets to a customer who has already left
Once the bill is paid, one tap opens WhatsApp with the invoice written out and a link to it, greeting them by name. The link is a capability token rather than a guessable number, and it opens that bill and nothing else · no login, no app, no account. They can read it on the spot or take the PDF.
- checkStraight to their chat when you have their number · WhatsApp asks who when you don't
- checkA page at your own address, in your café's theme
- checkDownload PDF from the same page, printable as it stands
- checkThe link opens that one bill · never the console, never anyone else's
What changes“Can you send me the bill?” stops being a job for tomorrow morning.
APEX GAMING · Invoice
Invoice: INV-2026-0912
Total: ₹708
Status: PAID · UPI
View or download:
respawna.com/i/8f3c1a…
Direct to their chat when you hold their number, and the contact picker when you do not · the button is never a dead end.
What the link opens
A page at your own address
respawna.com/i/8f3c1a…
No login, no app
The token is the key
Download PDF
The same bill, printable
This bill only
Never the console, never another customer
The link is a capability token, not a guessable id · and it opens the bill, never the café's console.
Every bill you have ever raised
Where a figure goes when somebody asks about it three weeks later
Paid, pending, overdue and void, grouped by month and filterable by period, member and method. Four figures sit above it · what is outstanding, what came in, how many are past their due date and what an average bill is worth. Each one is worked out from the rows underneath rather than asserted beside them.
- checkStatus follows the money · overdue is derived, not typed
- checkFilter by month, member or payment method, and share the URL
- checkOutstanding, collected, overdue count and average bill up top
- checkExport the lot to PDF or Excel whenever you want it
What changesA customer query from three weeks ago takes eight seconds instead of a shoebox.
Sep 2026
Pending + overdue
Paid bills
Past the due date
Across non-void bills
| Number | Member | Issued | Method | Total | Status |
|---|---|---|---|---|---|
| INV-2026-0912 | NEON_DRIFT | 07 Sep | upi | ₹708 | paid |
| INV-2026-0911 | Walk-in | 07 Sep | ₹528 | paid | |
| INV-2026-0910 | GHOST_07 | 07 Sep | wallet | ₹248 | paid |
| INV-2026-0909 | VOID_KING | 06 Sep | · | ₹413 | pending |
| INV-2026-0908 | Walk-in | 06 Sep | cash | ₹189 | |
| INV-2026-0907 | SPECTRE_9 | 05 Sep | cash | ₹354 | paid |
| INV-2026-0906 | ZEN_MODE | 04 Sep | · | ₹295 | overdue |
| INV-2026-0905 | MIDNIGHT_OWL | 04 Sep | upi | ₹472 | paid |
Every tile is worked out from the rows underneath it · a headline that disagrees with its own table is worse than no headline.
The one action that cannot be taken back
What happens when a bill was wrong
A numbered bill's figures never change. An unpaid one that was wrong is voided · its number stays, marked void, and anything sold from stock goes back. Money back on a paid one is a credit note, its working shown before you issue it and the way the money went back kept on it. Both need a typed reason, and both stay in the ledger with that reason on them.
- checkVoid an unpaid bill · its number stays, stock returns to the shelf
- checkMoney back on a paid one is a credit note, listed beside the invoices
- checkA reason is required, and it is kept on the row forever
- checkNothing is deleted · a bill that vanishes is one nobody can explain
What changesA mistake at the counter becomes a line you can point at, instead of a gap you have to account for.
Two ways to put a bill right
Unpaid → VOID
Number stays
Marked void, and anything sold from stock goes back on the shelf
Paid → CREDIT NOTE
Money back
Its own document, listed beside your invoices
Credit note · INV-2026-0908
What goes back: the money the customer gets, tax included.
Why give money back?
Charged twice at the counter
Back how?
cash
And the row stays in the ledger, at the same height as every PAID row beside it, with its reason on the card it shows when you hover, focus or tap it.
The reason is required, typed at the time, and kept · a bill that vanishes is a bill nobody can explain to an auditor.
Why the numbers hold
Money maths is the partworth testing.
01
Whole paise, never floats
Every amount is held as an integer number of paise, so nothing drifts by a hundredth over a year of bills. The GST halves are derived rather than each rounded on their own, which is what keeps CGST plus SGST exactly equal to the tax charged on an odd number of paise.
02
Append-only, by design
Invoices are not edited and not deleted. A wrong one is voided with a reason and stays on the ledger; a refund keeps the method the money came in by. Your revenue reports read that same ledger, which is why the figure on your analytics screen and the figure on your bills cannot disagree.
03
Your money, not ours
Respawna never processes what your customers pay you. Cash is cash, your UPI is yours, and the wallet is your café's own prepaid balance. We count it and show it back to you · standing in the middle of it is regulated territory we deliberately stay out of.
On the floor
The counter'sown screen.
Every bill you have raised, newest first, with bills waiting for a friend listed above the ledger they will join. A bill carries its controls on the row · open it, mark it paid, send it on WhatsApp, void it · so settling somebody at a busy counter is one screen and no navigation.
- checkWaiting bills and the full ledger on one screen
- checkEvery control on the row · no dialog hunting mid-rush
- checkGrouped by month, filtered by period, member or method
- checkPDF and Excel export whenever your accountant asks


A real capture of the console · the screen the sections above are drawn from, on a different café's month.
Questions
Asked beforethe first bill.
Does Respawna produce GST-compliant invoices?add
Yes. Tax is shown by component the way CGST Rule 46 asks for it · CGST and SGST listed apart on an intra-state supply, IGST on an inter-state one, computed per line rather than once on the total. HSN and SAC codes print per line where you have set them, the place of supply is frozen at the moment of issue, and your GSTIN and business details sit on the invoice. If you are not GST registered you can switch tax off entirely and the invoice is simply a clean bill.
Can a customer pay part cash and part UPI?add
Yes. A bill can be split across cash, UPI and card, and the parts are stored as parts rather than written into a description · so a report that asks how much cash came in this month gets the right answer. A member can also pay the whole bill from their prepaid wallet, on the same screen.
How does the customer get their invoice?add
On WhatsApp, in one tap. The message carries the invoice written out plus a link to it, and the link opens a page at your own address showing that bill with a Download PDF button. There is no login and no app · the link is a capability token, so it opens that one invoice and never your console or anybody else's bill.
What happens if we bill someone twice by mistake?add
Void it. On an unpaid invoice that cancels it, keeps its number marked void and returns any stock. On a paid one you give the money back with a credit note, which shows its working before you issue it and is listed beside your invoices. Both need a typed reason, and both stay in your ledger with it. Nothing is deleted, which is the point: a bill that disappears is a bill you cannot explain later.
Do walk-in customers get invoices?add
Yes. An invoice does not need a member account behind it · a walk-in gets the same numbered, itemised, tax-correct bill, and it can still be shared by link or WhatsApp. Members simply get theirs attached to their profile as well, alongside their wallet and their history.
Can I bill two people who played on different machines together?add
Yes. When you press End on one station, the others still playing are offered with a tick box: tick them and they end together onto one bill, one total and one payment with every session itemised. If one friend finishes early, their session can wait for the other: the station is freed, and their bill joins the friend's when that session ends. They can still pay by seat on that one bill.
Can I export invoices for my accountant?add
Yes, to PDF and Excel. Take a month as a PDF for filing or a spreadsheet for your own analysis; amounts are held to the paisa and the ledger is append-only, so what you hand over reconciles. There is no lock-in and your data leaves cleanly.
What does it cost?add
Plans start at ₹299 a month, and every plan begins with a 14-day free trial, no card. When the trial ends you either pay to carry on or stop · nothing renews by itself, because we hold no card. Current plans and prices are on the pricing page.