Desktop or web app for billing and inventory: when offline wins
How to choose between a web app and an offline-first desktop app for billing and inventory, what offline sync really involves, and when a hybrid makes sense.
- Published
- Updated
- Reading time
- 7 min
Choose a web app for billing and inventory when every counter has dependable internet and you want multi-branch reports, access from anywhere and no software to install. Choose an offline-first desktop app when billing cannot stop during an outage, when printers, scanners and scales must respond instantly, or when sites have poor connectivity. Many businesses end up with a hybrid of the two.
Tally, Busy and Marg have run Indian billing counters from Windows PCs for decades, and they still do. That is not nostalgia. A counter that cannot bill during the evening rush because the broadband dropped is losing money by the minute. At the same time, an owner who wants to see today's sales across four branches from his phone is badly served by four separate desktop installations. The choice is not old versus new. It is about where your business can tolerate a dependency on the internet, and where it cannot.
What actually goes wrong with web billing at a busy counter?
- The connection drops at the worst time. Shared broadband in a market building slows down every evening, and 4G backup is patchy indoors.
- Printing is awkward. Browsers show print dialogs, and thermal receipt printers need specific drivers and paper settings. Staff end up clicking three times per bill.
- Hardware integration is limited. Barcode scanners that act as keyboards work fine. Weighing scales on a serial port, cash drawers and customer displays are harder to drive from a browser.
- Every action waits on a server. Fifty milliseconds is invisible; two seconds per item scanned, with a queue at the counter, is not.
None of these are fatal for an office that raises 20 invoices a day. All of them hurt a supermarket, a hardware store or a pharmacy billing hundreds of times daily.
Where does a web app clearly win?
- Multi-branch visibility. Stock, sales and outstanding across every location, live, without anyone emailing a backup.
- No installation or updates. Every user gets the new version the moment it is deployed.
- Central backups. Data sits on a server that is backed up properly, not on a PC under the counter that nobody has backed up since Diwali.
- Access from anywhere. The owner, the accountant and the CA can all log in from wherever they are, with permissions to match.
- Mobile access. A field salesperson or a warehouse supervisor can use the same system from a phone.
For a services firm, a distributor whose orders come in by phone and WhatsApp, or any office-based team with fibre, a web app is almost always the better choice.
What does "offline-first" really mean?
Many products marketed as desktop apps are a website in a window. They show a desktop icon but stop working when the internet does. Real offline-first software is built differently:
- A local database on each machine, usually SQLite, which holds the masters and the transactions that machine needs.
- Every write goes to the local database first. The bill is saved and printed whether or not there is a connection.
- A sync queue sends local changes to the central server when the connection returns, and pulls down changes from other counters and the back office.
- Conflict rules, decided in advance. If two counters sell the last unit of an item while offline, does the system allow negative stock and flag it, or block the second sale? Either can be right; leaving it undecided is not.
- Device identity. Each machine is registered, so the server knows which device sent which records.
The hardest part is invoice numbering. Under GST rules, an invoice number must be unique within a financial year, and you are allowed more than one series. Give each counter its own series, such as A, B and C prefixes, so two offline counters can never issue the same number.
Offline sync is where the cost of a desktop app lives. A sync that silently drops a record, or duplicates one, turns into a stock mismatch or a GST problem weeks later. Insist on a sync log you can inspect and a test where the network is unplugged mid-bill.
What have we learned building offline software?
The SchoolBill desktop app lets a school office add students with no internet; the records upload automatically when the line returns. Two design choices made it work. First, a PC must sign in online once, so the server knows the device before it is trusted offline. Second, we decided exactly which actions work offline (adding student records) and which do not (a first-time login). Before release, the offline flow was tested end-to-end inside the real desktop build, not only in unit tests.
The desktop agent in TrackVora follows the same pattern: it keeps a queue on disk when offline and syncs later, so a dropped connection does not lose a day's attendance data.
AccVora, our GST billing software, takes the other route. Its Windows app packages the web app for the desktop and expects a connection, which suits a shop or office with steady broadband. Same company, two different answers, because the users' conditions were different.
Should you build a hybrid?
For most retail and distribution businesses, yes. Put offline-first desktop software at the billing counters and run the back office on the web: purchase, accounts, reports, multi-branch stock and the owner's dashboard. The counters sync sales and stock movements to the server every few seconds when connected and catch up when they reconnect.
A Noida distributor with three godowns is a good example. The godown counters issue delivery challans and gate passes offline-first, because the godowns sit on the edge of an industrial area with unreliable connectivity. The sales office, accounts and the owner work on the web version from anywhere.
One limit applies. If you are an e-invoicing business issuing B2B invoices, the IRN only exists once the government portal returns it. An offline counter can queue the request, but it cannot complete a valid e-invoice until it reconnects. Offline-first suits B2C retail billing far better than B2B invoicing.
How do you decide?
Choose a web app when:
- Each location has reliable broadband with a backup connection.
- Billing volume per counter is modest.
- Multi-location visibility and remote access matter most.
- You don't want to manage software on individual PCs.
Choose offline-first desktop when:
- A billing outage costs you real sales.
- Counters need tight integration with thermal printers, scales or cash drawers.
- Sites have unreliable connectivity: godowns, factories, rural branches, basements.
- Billing volume per counter is high and speed matters.
Choose a hybrid when both lists describe parts of your business.
On the technical side, desktop apps today are commonly built with Electron, which reuses web technology, or natively for Windows. Budget for an installer signed with a code-signing certificate, because Windows warns users about unsigned installers, and for a built-in auto-update mechanism, so you are not visiting every counter with a pen drive.
Frequently asked questions
Is a desktop app more secure than a web app?
Not automatically. Data on a counter PC is exposed to theft and to staff copying files. Encrypt the local database, require a login, and keep the server as the source of truth.
Can a desktop billing app work on Mac?
Electron apps can be built for Windows and macOS from one codebase. Most Indian billing counters run Windows, so that is usually the priority.
How are backups handled in offline-first software?
The server copy is the backup once the counter syncs. Until then, recent bills exist only on that machine, so the app should sync whenever it can and warn if it has been offline for too long.
Can we start with a web app and add a desktop counter later?
Yes, if the system is designed with an API from the start. The desktop app becomes another client of the same server.
What happens to stock when two offline counters sell the same item?
That depends on the conflict rule you choose. Most retailers allow the sale, let stock go negative briefly and flag it for review, because refusing a customer at the counter costs more.
Does an offline-first app need special hardware?
No. An ordinary Windows PC with an SSD is enough for a billing counter. What matters more is a UPS, so a power cut does not corrupt the local database mid-save, and a printer the software has been tested with.
Where to start
List each location, its typical connection, its daily bill count and the hardware at the counter. If every location has good connectivity, build for the web. If not, talk to us about desktop app development, or about custom software that combines both.
Key takeaways
- Pick web for multi-branch visibility and zero installs; pick offline-first desktop where billing cannot stop.
- Offline-first means a local database, a sync queue and conflict rules, not a desktop icon on a website.
- Give each counter its own invoice series so offline bills can never clash on GST numbering.
- A hybrid of desktop counters and a web back office suits most retail and distribution businesses.
Ready to put this into practice?
Let’s build the solution that gets you there.