Offline Mode
Use this page to keep selling when the internet drops, and to make sure every offline sale reaches the server afterwards.
Quick steps
- Keep selling. When the connection drops, the sync indicator in the top bar shows Offline. You don't need to change anything.
- Ring up sales as normal and take cash, a card on a standalone terminal, e-transfer, store credit or a gift card. You'll see Sale queued for sync after each sale.
- Watch the red number on the sync indicator — it's how many things are waiting to be sent.
- When the internet comes back, waiting sales are sent by themselves. To hurry it up, tap the sync indicator and tap Sync Now.
- Before closing the drawer, open Sales History and check no sales are still marked QUEUED or FAILED.
Offline sales are stored on that device. Clearing the browser's data deletes any sales still waiting to sync.
Common questions
What can't I do while offline? Integrated card terminal payments, voiding a whole sale, returns, manager PIN approvals and online orders all need the internet. Quick Add and time off requests do too.
A queued sale shows FAILED. Tap it in Sales History to read the error, fix the cause, then tap Retry Sync.
The register lost power while offline. Are my sales gone? No. Queued sales survive a restart. Open the POS again and they sync once you're back online.
A customer can't be found while offline. They were probably added on another register after this one last synced. They'll appear after the next sync.
More detail: how offline mode works, and the sync indicator
How Offline Mode Works
Each register keeps a copy of your store's information on the device so it can keep selling without the internet:
| Saved on the register | Used for |
|---|---|
| Products | Browsing, searching, scanning and adding to the cart |
| Categories | Category filters on the product grid |
| Customers | Looking up and attaching customers |
| Store settings | Tax rates, payment options, enabled features |
| Promotions | Sale campaigns and freebie rules |
| Label templates | Printing labels while offline |
| Quality tier pricing | Tier price matrices |
| Loyalty rewards and tiers | Rewards and tier discounts (when loyalty is turned on) |
| Store credit, gift card and house account balances | Paying with these while offline |
| Today's purchase totals | Daily purchase limits (only when purchase limits are enforced) |
The register also keeps its own waiting list of things done while offline — sales, single-item voids, cash drops, pay-ins, stock moves and clock-in/out actions — until they have been sent to the server.
While online, this saved copy is refreshed automatically in the background about every 5 minutes. When the network drops, the POS simply keeps using what it has saved.
The Sync Indicator
The sync indicator in the POS header shows your current state:
| Indicator | Meaning |
|---|---|
| Spinning arrows ("Syncing...") | A sync is running |
| Offline | The register cannot reach the server; it is working from its saved copy |
| Green tick with a time | Online, and the last sync finished within the last 15 minutes |
| Amber warning with a time (or "Never synced") | Online, but the last sync was more than 15 minutes ago — the saved information may be out of date |
| Red "Not synced" | No products have been saved on this register yet |
A register opened the next morning shows amber until its first sync of the day finishes, even though everything it saved yesterday is still there.
A red number badge on the indicator shows how many items are waiting to be sent: pending sales, cash drops, pay-ins, stock moves, clock-in/out actions and voids added together.
Tap the indicator to open the Sync Status panel. It shows whether you are connected, how many sales, cash drops, pay-ins, stock moves, time actions and voids (Pending voids) are waiting, how much device storage is in use, when the register last synced, and a Sync Now button (available only while online).
Switching between online and offline is automatic. You do not need to change any setting. While offline, the register checks every few seconds whether the server is reachable again.
More detail: making sales offline
Making Sales Offline
How It Works
- Ring up items and take payment as normal.
- Instead of sending the sale to the server, Brother POS saves it on the register and shows "Sale queued for sync. Will sync when back online." The completion screen shows the sale as queued rather than confirmed.
- The badge on the sync indicator goes up by one.
- When the connection returns, the queued sales are sent to the server automatically, one at a time.
The same thing happens if the connection drops in the middle of submitting a sale: the sale is saved on the register instead.
If the register is online and the server rejects a sale (for example, a purchase limit or a validation problem), the sale is not saved for later. An error appears, the cart stays filled, and you need to fix the problem or re-ring the sale.
In the rare case the register cannot store the sale at all (for example, the device is out of storage), you will see "SALE NOT SAVED — this device could not store the sale. Do not mark it paid; please re-ring it." The cart stays open. Do not hand over goods as if the sale went through.
Which Payments Work Offline
| Payment | Offline? |
|---|---|
| Cash | Yes |
| Card (recorded in Brother POS, charged on a standalone terminal) | Yes — the card itself is charged on your terminal, which has its own offline rules |
| E-Transfer | Yes |
| Store credit, gift card, house account | Yes, using the balances saved on the register |
| Split payment | Yes |
| Integrated card terminals (a terminal Brother POS sends the amount to) | No — these need an internet connection |
What Is Saved With Each Offline Sale
Each offline sale keeps the complete transaction: the items, quantities and prices, discounts, tax, payment method and amounts, the attached customer, the cashier, and the time the sale actually happened (not the time it synced).
Store Credit, Gift Card and House Account Balances
These balances are saved on the register each time it syncs, so the payment options keep working offline.
- When the register cannot reach the server, looking up a store credit, gift card or house account balance uses the saved balance instead of failing.
- After a sale uses store credit or a gift card (and after a split payment that includes a house account), the register takes that amount off its saved balance straight away. A second offline sale for the same customer on the same register therefore sees the reduced balance.
The saved balance only keeps the register sensible while offline. The server works out the real balance when the sales sync, and the next sync replaces the saved figures. A balance used on another register while this one is offline will not show here until the next sync.
More detail: how syncing works
Data Synchronization
First Sync
After you log in, the register downloads a full copy of your store's information if it has nothing saved yet or its last sync is more than a day old. This includes store settings, categories, your product catalog, your customer list, quality tier pricing, loyalty rewards and tiers, promotions, label templates, today's purchase totals (if purchase limits are enforced), and store credit, gift card and house account balances.
Ongoing Sync
While online:
- Waiting items (sales, voids, cash drops, pay-ins, stock moves, time actions) are sent as soon as they are queued, and the register checks for any left over every 30 seconds.
- Saved store information is refreshed in the background about every 5 minutes.
- Sync Now in the Sync Status panel sends waiting items and refreshes everything immediately.
When the Connection Comes Back
- Queued sales are sent to the server one at a time, oldest first. Each one is confirmed before the next is sent.
- If a sale fails, the error is recorded on it and it stays in the queue to try again.
- The register also refreshes its saved store information.
A sale that was received by the server but whose confirmation never reached the register is simply sent again. The server recognises it as the same sale and does not record it twice.
Offline Sales Are Always Recorded
A sale rung up offline already happened — the customer paid and left with the goods. So when it syncs, the server records it even if:
- it takes the customer over the daily purchase limit (for example, because they also bought at another register that the offline register couldn't see). The sale is recorded and an entry is added to the admin Activity Logs marked as needing review, so a manager can look into it.
- there wasn't enough stock by the server's count. The sale is recorded and the product's stock can go below zero. The product can still be edited and its stock corrected afterwards.
- the Sales Floor didn't have enough at a store that keeps stock in more than one place. The sale is recorded, and the product's stock history notes that the sales floor was short and how much came out of back stock.
When an offline sale reaches the server, the server works out the total again. Occasionally that differs by a few cents from the amount the cashier collected (for example, from discount rounding). Because the customer has already paid, Brother POS accepts the sale and keeps a note of the difference rather than rejecting it.
More detail: viewing queued sales and voids
Viewing Queued Sales
Queued sales appear at the top of Sales History, marked with a yellow QUEUED badge, the time, the cashier and the total.
Tap a queued sale to see its details. If it has failed to sync, the last error is shown. From there you can:
- Retry Sync — send it to the server right now.
- Delete Sale — remove it from the register. A deleted queued sale is not recorded anywhere and cannot be recovered, so only do this for a sale you are sure should not exist (for example, a test sale or one you have re-rung).
A sale that has failed five times is marked FAILED (red). The register keeps retrying it automatically for a while, but after 10 failed attempts it stops and waits for you to use Retry Sync.
Queued Item Voids
Single-item voids made offline are also listed at the top of Sales History, for example Void Pop ×1 — receipt #1234 with a QUEUED badge.
If the server refuses one (usually because it needs a manager's approval that couldn't be given offline, or because the sale wasn't paid in cash — single items on card, gift card, store credit, house account and split sales need a return instead), or it fails five times, it's marked FAILED with "Not applied — the line is still on the sale. Void it again from the sale; a manager may need to approve." and the reason. It is not sent again. Void the line again from the sale while online, then tap Dismiss to clear the notice. Dismissing doesn't void anything.
More detail: what works offline and what doesn't
Feature Availability Offline
Works Offline
| Feature | Notes |
|---|---|
| Product browsing and search | Uses the saved product catalog. Typing part of a product name or SKU finds it, as it does online |
| Category filtering | Uses saved categories |
| Brand filter | The brand list is built from the brands on the products saved on this register |
| Barcode scanning | Uses the saved product catalog, including the barcodes of individual variations |
| Adding items to cart | Full functionality |
| Weight selection | Presets and manual entry work; a scale connected to the register still works |
| Discounts (manual) | Percentage and dollar discounts work |
| Tax calculation | Uses the saved tax settings |
| Cash and recorded card payments | See Which Payments Work Offline |
| Label printing | Uses the saved label templates |
| Voiding a single item on a cash sale | Queued and sent when the connection returns. See Queued Item Voids |
| Time tracking | Clock-in/out and breaks are queued and sent later with the time they actually happened |
| Cash drops and pay-ins | Queued and sent when the connection returns |
Limited Offline
| Feature | Limitation |
|---|---|
| Customer lookup | Only customers saved on this register; customers added elsewhere since the last sync will not appear |
| Loyalty points | May not reflect the most recent balance |
| Store credit / gift card / house account | Uses saved balances; activity on other registers is not reflected until the next sync |
| Sale campaigns | Uses saved campaigns; start and end dates are checked against the register's own clock, and new or changed campaigns will not apply until the next sync |
| Stock levels | Shown from the saved copy and reduced by this register's sales; sales on other registers are not reflected |
| Daily purchase limits | Checked against the customer's daily total the register last received from the server; purchases made elsewhere since then may not be counted |
| Sales History | Shows queued sales and whatever sales list was last loaded |
Not Available Offline
| Feature | Reason |
|---|---|
| Integrated card terminal payments | The terminal is reached through the server |
| Voiding a whole sale | Needs the server |
| Returns | Needs the server to look up the original sale |
| Manager PIN approvals | The PIN is checked by the server |
| WooCommerce and online orders | Need the server to fetch orders |
| Completing a pending phone order (Mark Completed) | The order is completed on the server, so it fails straight away rather than being queued |
If your store relies on daily purchase limits, offline mode cannot guarantee they are enforced across registers. The limits are checked against information the register already has, which may be out of date.
More detail: cart totals, tax and promotions offline
Cart Totals on a Slow Connection
While online, cart totals are worked out by the server so pricing, discounts and promotions are exact. To keep the register responsive on a poor connection:
- If the server is slow to answer but the connection is up, the register waits longer rather than guessing. Under the totals it says Still calculating — the server is slow to answer until the answer arrives.
- If the server can't be reached, still doesn't answer, or has a problem on its end, the register works the total out itself, so the cart never sits on old numbers. The cart then shows ⚠ Offline pricing — promotions may be out of date.
- One slow answer does not put the register into offline mode. It switches to offline only when there is no connection at all, or after several slow answers in a row.
- Genuine problems the server reports back (for example, your login has expired) are still shown to you.
The register's own calculation keeps each line's weight preset, so offline sales of preset weights (for example, 14g and 7g of the same flower) keep their correct tier prices when they sync.
Offline Tax Calculation
While offline, Brother POS calculates tax from the saved store settings:
- Standard tax (for example, 13% HST).
- Split tax (GST/PST), including items exempt from PST.
- Additional taxes (for example, a vapour products tax).
Taxes match online mode as long as your tax settings have not changed since the register last synced.
Offline Promotions
Sale campaigns and freebie rules are saved on the register and applied locally:
- Percentage and dollar-off campaigns are applied from the saved rules.
- Spend-based deals work as they do online: "$X off when you spend $Y" is kept on the sale when it syncs, and "% off when you spend $Y" only discounts the products the deal targets.
- Buy one get one works on flower sold by weight when it was rung up at a preset weight — 7g at the 3.5g preset counts as two eighths. A custom weight with no preset isn't counted, just as online.
- Quality tier flower is charged from the product's own prices, including its custom weight prices and any sale campaign, so the cart matches what the picker shows.
- Loyalty tier discounts only apply to products in categories that take them, as online.
- Freebie campaigns can add their free item.
- Date ranges are checked against the register's own clock.
A campaign created or changed while the register is offline will not take effect until the next sync. A campaign that ended while offline may still apply until the register syncs.
More detail: common scenarios
Common Scenarios
Internet Drops During a Busy Period
- The POS switches to offline mode by itself.
- Keep selling. Each sale is saved on the register.
- When the internet returns, sales sync automatically in the background.
- The badge count goes down as each sale is confirmed.
Register Loses Power While Offline
Saved sales survive closing the browser or restarting the device. When power is back:
- Open the POS.
- Queued sales from before the power loss are still waiting.
- Once online, they sync automatically.
Offline sales are stored in the browser on that device. If you clear the browser's data (cookies and site data), queued sales are lost. Never clear browser data on a register with sales waiting to sync.
Several Registers Offline at Once
Each register keeps its own queue. When the connection returns, each register sends its own sales. Every sale carries its own unique identifier, so registers do not clash.
A Long Offline Period
If a register stays offline for hours or days:
- Sales keep queuing, limited only by the device's storage (the Sync Status panel shows storage use).
- Prices, stock levels and customer details become more and more out of date.
- When the connection returns, queued sales sync oldest first.
More detail: troubleshooting and best practices
Troubleshooting
| Problem | Solution |
|---|---|
| POS shows "Offline" but the internet is working | Wait a few seconds — the register rechecks the server regularly. If it stays offline, refresh the page and check that this device can open your store's Brother POS address. |
| Sales are not syncing | Tap the sync indicator and press Sync Now. Open Sales History and tap a queued sale to see its last error. If your login has expired, log in again. |
| A queued sale shows FAILED | Tap it to read the error, fix the cause (for example, open a cash drawer on that register), then press Retry Sync. Going over the daily purchase limit or selling more than the server's stock count does not make an offline sale fail — those are recorded anyway. |
| A queued item void shows FAILED | The line was not voided. Void it again from the sale while online (a manager may need to approve), then tap Dismiss. |
| Product prices seem wrong | Prices come from the saved copy. Tap the sync indicator and press Sync Now once online. |
| Customer not found | The customer was added elsewhere after this register last synced. They will appear after the next sync. |
| "SALE NOT SAVED" message | The device could not store the sale. Re-ring it. Check the device's free storage (shown in the Sync Status panel). |
| iPad or iPhone seems stuck saving a sale | The POS stops waiting after a few seconds and saves the sale to a backup spot on the device instead. If the screen stays frozen, close and reopen the browser — queued sales are kept. |
Best Practices
- Do not clear browser data on registers. It deletes the saved copy, including any sales waiting to sync.
- Watch the badge on the sync indicator. A number that keeps growing while you are online means sales are not syncing. Look into it straight away.
- Check Sales History at the end of the shift. Before closing the drawer, make sure no sales are still marked QUEUED or FAILED.
- Treat amber as a prompt. If the indicator is amber while you are online, tap it and press Sync Now.
- Use a wired connection where you can. Ethernet is more reliable than Wi-Fi for registers.
- Install the POS to the home screen or desktop. It opens like an app and is harder to close by accident.
What's Next?
- Time Tracking — Clock in/out at the POS
- Manager Override — How manager PIN approval works
- Sales History — View queued and completed sales
- Offline Issues — Fixing sync problems