Selling when the connection drops
The desktop till keeps taking cash and card when the internet goes down, prints a provisional receipt, and sends everything when the connection returns. What works offline, what waits for the connection, and how to check that every sale arrived.
Checked against the product on 23 October 2026
Switching it on or off
Offline selling is off until the owner switches it on in SettingsWorkspaceGeneral › Tills can sell offline. It saves as soon as you switch it: the till you are on applies it at once, every other till within 15 minutes while it is online. A till that has not yet heard the setting treats it as off. While it is off, a till that loses the connection stops taking payment until it returns, with Offline selling is switched off for this business, so this till cannot ring sales until the connection returns. Sales already rung offline still send.
What the cashier sees
When the connection drops, a banner above the products says the till is offline and when it last received the catalogue. On a till that can sell offline it says that cash and card sales are kept on the till and sent when the connection returns, and that prices may have changed since. On a till that cannot, it says that a sale cannot be completed until the connection returns, and the payment screen says why: offline selling is switched off for the business, the till has not finished setting up (it needs to be online once), or it has used up its range of numbers.
Anything that needs the server says so in one line, in the till's language, instead of an error. The same message is not repeated for every tap.
What works offline
| Works offline | Notes |
|---|---|
| Cash and card sales, split between them | The receipt is a provisional receipt numbered PRV-<date>-<number>, its only number, and says the invoice number is issued when the till reconnects. Type the PRV- number (any case or spacing) in History or Returns to find the sale, before or after it syncs; its detail shows Provisional PRV-… → Invoice INV-…. When the sale reaches the server it takes the next number of your single invoice series, and Reprint prints the numbered invoice. |
| Paying in lira, with change in lira | Rounded by your shop’s cash rounding, even after the till was restarted offline. |
| Quick cash and the cash drawer | The receipt prints and the drawer opens as it does online. |
| Scanning and searching products | From the catalogue the till last received. Stock figures are as of that time. |
| History and reprint | Sales rung offline are listed with an Unsent badge, then Sent once the server has them. Reprint prints the same receipt the customer got. F6 reprints the last one. |
| Sending to the kitchen | On a till with a kitchen printer, the kitchen ticket prints there, and a second send prints only what is new. The Kitchen Display does not show these orders. The ticket reads as an online one does: each dish with its size (Margherita · Solo), grouped under its category in the order set under Commerce › Categories, and named in the kitchen’s language. The till keeps the names, the categories and that language in its offline copy of the catalogue. |
| Parking and resuming orders | + New, Ctrl+H and Resume park orders on this till, up to 10, and bring them back. A parked order stays on the till until it is paid or cancelled. Cancelling one the kitchen already has waits for the connection (below). |
| Cash drops, pay ins, payouts and No Sale | The drawer opens and the movement is sent when the connection returns, booked once; the window says it is kept on this till. Only for this till’s own drawer and, where each person has their own drawer, only for the person who opened the shift. |
| Locking and unlocking the till | A locked till stays locked if it is restarted. On the desktop app, the cashier who locked it can unlock it with their PIN while offline, if they typed their PIN online on this till in the last 24 hours. After 5 wrong PINs the till makes them wait; after 10 it unlocks only when the connection is back. |
What waits for the connection
| Needs the connection | Why |
|---|---|
| Sales on account (COD at the counter) | The customer’s credit limit and balance are on the server. |
| Redeeming loyalty points and exchange credit | The balance is shared with your other tills and the online shop. Take the full amount instead. |
| Orders held on the server, and other tills’ orders | Shared with every till. They are listed again when the connection returns. |
| Returns, exchanges and voids | The original sale and what was already refunded are on the server. |
| Closing a shift and the Z report | The count needs every sale booked first. |
| Bundles, splitting an item, changing a line’s options, employee sales | Priced or shared by the server. |
| Taking back food the kitchen already has: reducing or removing a line it has, Void, or cancelling a parked order it has | It needs a supervisor’s approval, which the server checks. The till says The kitchen already has this. Taking it back needs a supervisor, which needs the connection. Leave it on the order, or wait for the link., and for a parked order The kitchen already has this order. Cancelling it needs a supervisor, which needs the connection. Keep it parked, or wait for the link. Once the connection is back it works as usual (see After a connection drop). |
| Signing in, and switching cashier | Signing in checks the PIN on the server. Only unlocking by the cashier who locked the till works offline. |
When the connection returns
The till sends the sales it holds, oldest first, without anyone doing anything. Each keeps the number printed on its receipt. An order that was started before the connection dropped and then paid, parked or cleared on this till is closed on the server too, so it does not come back on screen to be rung a second time. If another till changed that order meanwhile, it is kept as a held order instead, and the sync history says so. To see what is still waiting and what arrived, open SettingsSync, or click the sync indicator in the till's top bar. Sales are listed by their invoice number once the server has numbered them, and by the till's POS reference until then.
- Not yet synced: sales still on the till. Send now sends them at once.
- Needs attention: a sale the server would not take, with the reason. If its shift was closed from another device meanwhile, a supervisor can carry it over into the shift it was rung in (see Sales rung while offline).
- Sync history: what arrived in the last 30 days. A sale whose total, rate or time on the server differs from the till's is marked, with both figures side by side. A lira sale settled by your cash rounding is not a difference.
- Cash drops, pay ins, payouts and No Sale rung offline are listed beside the sales, with who made them and the amount.
When another till sold the last one meanwhile
Two tills can sell the same last unit while one of them is offline. The offline sale is never refused when it arrives: the customer has paid and holds a numbered receipt. It is booked, the stock that is left is taken, and the units the books did not have are recorded as a stock shortfall. The sale's row in the sync history says which items were short. The stock team then finds the missing units, or writes them off. Until then the units carry no cost of goods sold, because the books never held them.
The numbers each till used offline appear in the invoice register with the rest.
After a connection drop
If the order on screen was changed while the connection was down, even for a moment (a line added, removed or changed, or sent to the kitchen), the till keeps that order as its own copy after the connection returns, until it is paid, parked or voided. The server's copy does not have those changes, so the payment takes the till's. A parked order picked up again with Resume is kept the same way.
Taking back food the kitchen already has from such an order works once the connection is back, as on any other order:
- Reducing or removing a line the kitchen has, or Void. The till first hands the order back to the server, which prices it as it prices a payment. From then on it is an ordinary order again.
- Cancel order on a parked order in Held orders. The till hands it back to the server as a held order, and the server cancels it.
The take-back then goes as Take food back from the kitchen describes: a cashier without Cancel orders already sent to the kitchen gets Supervisor Override Required and a supervisor enters their Supervisor PIN, the kitchen is told, and the cancellation slip prints on a till with a kitchen printer. The hand-back itself is recorded in the activity log (StoreActivity), under the action order_adopted_from_till.
This needs the desktop till 0.4.4 or later, and 0.4.5 or later on a till paired with Choose on the till. On an older till, taking food back from such an order is refused with the offline sentence even while the till is online: update it (see Updating the desktop app).