All docs

Counter · Updated 2026-09-14

Cross-Device Session Sync

Watch it

  • Animated walkthrough: Join an open session from another device

    Join an open session from another device

Plain-English summary#

A register session (the open shift on one register) isn't tied to the device that opened it. When one cashier opens Register 1 on the front tablet, every other device in your organisation sees the session appear in its Open Sessions list straight away. Another cashier can tap Join on that session card from a laptop or second tablet and work the same session. When anyone closes the register, every other device in that session is locked out by a "Register Closed" message. A device that was offline when the register closed finds out as soon as it reconnects. Submitted orders and the session itself are shared; the cart you're still building stays on your own device until you submit it.

When you'd use this#

  • A cashier steps away mid-shift; another cashier joins the same register session from a different device without closing and reopening
  • The front-of-house tablet dies mid-service — a manager joins the same session from a back-office machine and carries on
  • Two cashiers covering one busy register (both devices in the same session; orders submitted on one appear on the other)
  • A device loses its connection — when it reconnects, it re-checks the session instead of trusting what it had before

Walkthrough#

Opening a register from a fresh device#

  1. The cashier opens the Counter page and opens a register with the opening float (see Cash Handling).
  2. On every other device, the Open Sessions list updates on its own — the new session card appears with outlet, register, opened time and the opener's name, without a reload.

Joining an already-open session from a second device#

  1. The second cashier opens the Counter page on another device. The open session shows as a card in Open Sessions with two buttons: Join and Details.
  2. Tap Join. You're taken into that session's POS. Anyone in your organisation can join an open session — joining doesn't lock others out, and the last person to join is recorded.
  3. Both devices are now working the same session. Orders submitted on either device appear on the other almost immediately.
  4. What doesn't sync: the cart you're still building. It stays on your device until the order is submitted.

If the connection drops#

  1. The device reconnects automatically.
  2. On reconnecting, it checks whether its session is still open. If the register was closed while you were offline, the lockout happens then.
  3. As a backup, the session is also re-checked when you switch back to the app (at most once every 5 minutes).

Closing the register from any device#

  1. Any device in the session can start the close (if the user has close permission).
  2. When submitted, the session goes to Pending Close — every cashier close waits for supervisor approval, whether or not there's a variance (see Session Lifecycle).
  3. Other devices in that session are locked out: a "Register Closed" message that can't be dismissed sends the user back to the Counter page. The message tells you if there were variances: "This register has been closed (with variances pending review) by another device. You can no longer ring up sales on this session." versus "This register has been closed by another device. You can no longer ring up sales on this session."
  4. The device that closed the register doesn't see the message.

Key concepts#

  • Sessions are shared — any authorised user in your organisation can join an open session, and every device's session list and lockout stay in step.
  • Explicit Join, no exclusive lock — joining is a deliberate Join, never silent. Several devices can be in the same session at once.
  • Two devices opening the same register — if two devices try to open the same register at the same moment, the second is refused with "Register already has an open session" and can join the first one's session instead.
  • Close lockout — the "Register Closed" message is what stops sales on a closed session. It appears as soon as the close is submitted (Pending Close), not only after supervisor approval.
  • Re-check on reconnect — after any connection drop, the device asks again whether its session is still open, rather than trusting what it had.
  • Organisation-wide — session updates reach every device in your organisation, and each device reacts only to the session it's in.
  • App updates on session entry — opening a register, joining a session or switching sessions is a safe moment to apply a waiting app update. If one is waiting and it's safe (you're online and every order and payment is saved), you'll briefly see "Updating to the latest version…" and land back in the session. It never reloads over unsaved orders or payments. This short reload is expected, not a fault.

Common questions#

Q: Can two cashiers be on the same register at the same time? A: Yes — both devices Join the same session, and submitted orders show on both. A second person joining is not refused.

Q: How do I take over a register from another device? A: Counter page → Open Sessions → the session card (outlet, register, opened time, opener's name) → Join.

Q: Will my cart sync to the second device? A: No — the cart you're building stays on your device until the order is submitted. Submitted orders appear on other devices almost immediately.

Q: What happens if my connection drops mid-shift? A: The app reconnects automatically and checks your session. If the register was closed while you were offline, the Register Closed message appears then. Orders taken while offline are sent once you're back online.

Q: What if two devices try to open the same register at the same moment? A: One succeeds; the other gets "Register already has an open session" and can Join that session.

Keep reading