What works, and what does not
Capture works offline. Completion does not — and that boundary is deliberate.Works offline
- Ringing up and completing a sale on any payment method, including part-payment and credit
- Barcode scanning and product search, against the cached catalogue — the whole sellable list, not just the 100 tiles on screen
- Holding and resuming carts
- Interaction screening against the cached ruleset, including a pharmacist’s acknowledgement
- Printing the receipt
- The calculator
Needs a connection
- Account balance as a tender — “Account balance needs a connection — take cash or card, or wait for the network.”
- Searching for a registered customer
- Redeeming a loyalty reward (it stays available for next time)
- Everything outside the till: dispensing workflow, receiving stock, billing and reports
Sell through an outage
Notice the bar
Ring the sale up as normal
Complete it
Give the customer their slip
Keep going
What happens when the connection returns
Sales sync on their own, one at a time, in the order you took them. You do not have to press anything. Open the Sync status sheet from the bar to watch:Three outcomes, and why you cannot be double-charged
Every sale carries its own key from the moment you complete it, and that key travels with it through every retry.Online — it goes straight through
Online — it goes straight through
Offline — it is saved and queued
Offline — it is saved and queued
The connection died mid-request — the risky one, handled
The connection died mid-request — the risky one, handled
Retries, and what “Need review” means
- Anything that failed to reach the server is retried automatically, with a growing gap between attempts so a flapping connection is not hammered.
- A sale the server actively refuses — a bad payload, a product it does not recognise — is not retried silently. It goes to Need review and waits for a person, because repeating a refused write forever is how quiet data loss happens.
- Stock shortfalls are not rejections. A sale that went beyond recorded stock syncs perfectly well and shows up on Inventory › Reconciliation to be squared off later.
Stale figures are labelled, always
While you are offline, the cached catalogue is treated as stale regardless of its age, and the header says Stock as of HH:MM so the number never pretends to be live. Low-stock badges are muted for the same reason. The cache also goes stale after about fifteen minutes online, and is replaced wholesale rather than patched. Read the label and trust it: a figure presented as “as of 14:32” is exactly that, and another till may have sold the last box at 14:40.Before the outage: prime the terminal
A device can only work offline if it has loaded the till at least once while online — that is when it takes its copy of the catalogue and the screening rules. Open POS on every counter machine on the day you set it up. On the desktop app, a terminal that has never been primed shows an offline page headed Can’t reach ClinikEHR: “This terminal needs to connect once to finish setting up. Check the network and try again — after the first successful load, the POS keeps working even when the connection drops.” Select Retry once the network is back. Any sales already saved on that machine are safe — the page says so. See The desktop app and Working offline.Check it worked
- During the outage: sales complete, receipts print, and the status button counts what is waiting.
- After it: the status button reads Synced, Waiting to sync is zero, and every sale appears in Sales History with a real receipt number and an Offline badge showing where it was captured.
- Sales taken offline count towards the day’s totals and reports exactly like any other.
If something goes wrong
The count is not going down
The count is not going down
Sales are sitting in 'Need review'
Sales are sitting in 'Need review'
'Account balance needs a connection'
'Account balance needs a connection'
I cannot find a customer to attach
I cannot find a customer to attach
A loyalty reward will not apply
A loyalty reward will not apply
The provisional receipt will not scan
The provisional receipt will not scan
Another till does not show my offline sales
Another till does not show my offline sales
Old synced sales vanished from the queue
Old synced sales vanished from the queue