❌ A cloud-only POS
When the connection drops, the screen spins. Staff write slips by hand, prices come from memory, and the day's sales have to be typed in again — usually wrong.
CountOS Offline POS is the counter app that keeps billing during an outage. Scan barcodes, take cash, partial or credit payment, and print the receipt — then let every queued sale sync itself the moment the connection returns.
Load shedding, a snapped fibre line, a router restart, a busy Friday evening — the queue does not care. A cloud-only POS turns the counter into a notebook at exactly the worst moment.
When the connection drops, the screen spins. Staff write slips by hand, prices come from memory, and the day's sales have to be typed in again — usually wrong.
It keeps billing, but stock never moves, credit customers are not recorded, and nothing reaches your reports. The drawer and the software disagree by month end.
The counter app carries its own catalog and prices in the browser. It sells with no connection, and the sales join the same stock ledger, ledgers, and reports once it can talk to the server again.
Because the offline till is CountOS — not a bolt-on cash app — a synced sale posts stock, COGS, cash, and the customer balance through the same posting engine as an online sale.
These are real CountOS Offline POS screens from the till that runs on your counter — the same interface your staff see with the network cable pulled out.






Four steps from setup to a sale that has already reached your books.
Sign in on the counter device with a CountOS user that holds the pos.offline permission. The till registers a long-lived device token.
The till searches its local catalog by barcode, SKU or name, prices the cart, and takes full, partial or credit payment.
The outbox pushes automatically, or staff press Sync now. The server accepts each slip, assigns real invoice numbers, and posts stock, COGS and cash.
Synced offline sales behave exactly like online sales, so there is no parallel set of numbers to reconcile.
Everything a counter needs to keep trading — plus the controls an owner needs to trust the numbers.
A service-worker shell and a local IndexedDB catalog mean the app opens and sells even when the browser is completely offline.
Queued sales push on reconnect — automatically in the background, or on demand with the Sync now button.
USB or Bluetooth scanners work as normal: the scan matches the local catalog and drops straight into the cart.
Walk-in customers pay in full; named customers can pay part now or go fully on credit, exactly as online.
Walk the shelves with the tablet, enter counted quantities against the system estimate, and post the variances on sync.
Every offline receipt carries its own slip number so the counter and the server can never be confused about what was sold.
Each till holds its own token. Revoke it from POS Devices and a lost or stolen device stops syncing immediately.
Point a till at a branch when it connects, and move it to another branch later from its Catalog tab with a fresh stock pull.
Anything the server had to accept with a warning — an oversold line, a changed product — lands in Sync review for a manager.
No surprises: the till tells you exactly what it knows, and the server stays the authority on stock and numbering.
| Action at the counter | While offline | After sync |
|---|---|---|
| Barcode scan and pricing | Matches the downloaded catalog and price list | Re-validated against the live catalog |
| Completing a sale | Saved to the till outbox, receipt prints with a provisional slip number | Server assigns the real invoice number |
| Stock deducted | Local estimate only — the till labels it as an estimate | Authoritative stock movement and COGS posted |
| Cash and credit | Payment mode and received amount are stored with the slip | Cash account, receivable or payable updated |
| Customer credit balance | Shown as a local estimate for cashiers | Recalculated from the posted invoice |
| A line that oversells | Sale is still completed — the customer has the goods | Accepted and flagged for review instead of silently blocking the till |
| Stock count | Count sheet held on the device | Variance posted as a stock adjustment |
| Reports and ledgers | Not yet visible to head office | Identical to an online sale in all 25+ reports |
If the device has a modern browser, it can be a CountOS till.
Any counter PC, laptop, Android tablet or iPad. A USB or Bluetooth barcode scanner and a receipt printer work as they do online.
Chrome, Edge, or Safari. The till installs to the home screen as an app icon — nothing to download from an app store.
The till must reach the server once to register and download the catalog. After that it is independent of the connection.
Offline selling is its own permission. Grant pos.offline only to the users who actually run a till.
Register a till per counter and point each one at its own branch. Every till syncs to the branch it was registered for.
Offline sales are ordinary posted invoices, so they flow into sales, profit, cash-collected, ledger, and cashbook reports.
The questions shop owners ask us before they trust a till with an outage.
In the demo we disconnect the till, ring up a cart, print the slip, and then reconnect and show the same sale land in your reports.