GreenSailsAlpha

Offline Operation & Sync

How the POS keeps working without internet, syncs in the background, and handles sign-in when a session expires.

GreenSails POS is built to keep working when the internet drops: checkout, PIN verification, and recall continue on the register. When connectivity returns, a background sync merges what is stored on the device with your organization's data in GreenSails.

What works offline

CapabilityOffline behavior
PIN loginVerified against operator codes saved on the device
Order checkoutSaved on the register; marked as not yet uploaded
Item catalogLoaded from the local database, available offline after at least one successful sync while connected
Recall (local history)Reads on-device history including previously synced orders
Shift open/closeBase only: queued on the device if created offline; Satellites mirror location trading status from synced Base shifts
Stock count linesSaved on the device; uploaded when back online
Menu board togglesUnavailable, requires a live connection (see Menu board on POS)

Sync surfaces

The command bar sync indicator and connection status show live connection health. The indicator can also show an unsynced count or that attention is needed when uploads are pending.

Live updates

While connected, the register receives live updates for:

  • Catalog, category, and stock count changes
  • Modifier template updates
  • New, settled, cancelled, and split orders
  • Shift open and close events
  • Operator updates, removing the signed-in operator locks the terminal to PIN entry
  • Menu board schedule and availability (for the POS menu board screen)

When online, new sales and settlements are sent right away so every register stays current.

Background sync

Every 60 seconds while connected, the register also:

  • Uploads orders, shifts, and count lines that were not sent in real time
  • Downloads recent orders at the location for Recall

On first launch after sign-in, the register downloads a full copy of catalog, operators, and orders. After a reconnect, it uploads anything queued on the device and downloads changes missed while offline.

Dual-currency exchange rates on the terminal come from the last full sync. While offline, cash settle keeps using that cached rate until the next full sync refreshes it.

Location-wide order history

Registers download shared order history for the venue (90-day window). See Recall orders for search and conflict behavior.

Push priority & conflicts

Unsynced sales on the register take priority until they are uploaded successfully. The device will not replace an in-progress offline order with an older copy from the cloud.

Shifts follow a similar rule: already-synced shifts are the source of truth once uploaded; shift opens created offline on a Base register stay on the device until they upload. Satellites never open shifts. They only need to know whether any Base shift at the location is open (including shifts synced from other registers) before saving orders.

Sign-in when a session expires

When the register detects an expired or invalid sign-in session:

  1. The app signs out automatically
  2. Saved session data is cleared
  3. The app returns to the login screen

Manual sign-out from the command bar follows the same path (managers only).

After a session expires, someone must sign the terminal in again, entering a PIN alone is not enough without a valid service account sign-in.

Inventory sync

Stock count and price edits from the dashboard are sent to registers in real time. The POS applies them locally so checkout grids stay current within seconds.

Operator lock

Use Hub Lock terminal to clear the operator and return to PIN entry without signing the terminal out. Use this between cashiers during a connected shift.

If an operator is removed in the dashboard while signed in, the register returns to the PIN screen automatically during the next sync.

Offline lockdown

When a terminal drops into offline local mode, the app blocks actions that would strand the register or delete unsynced sales:

ActionOffline behavior
Sign outManagers only in the command bar; disabled while offline, signing out requires cloud authentication and would lock the terminal out completely
Clear local dataDisabled on bootstrap recovery screens, resetting credentials or cache would wipe unsynced orders in the local database

Reconnect and wait for sync to finish before signing out or clearing local state. Lock terminal on the Hub remains available so cashiers can still hand off the register.

What's next

On this page