Skip to main content

Idempotent ClientOrderId, duplicate-safe replay | HelloBooks POS Internet drops at the till? The cashier keeps selling. Orders queue locally with idempotent IDs; on reconnect, the server batch-syncs without ever double-billing.

OFFLINE-FIRST POS

Idempotent ClientOrderId, duplicate-safe replay

Internet drops at the till? The cashier keeps selling. Orders queue locally with idempotent IDs; on reconnect, the server batch-syncs without ever double-billing.

Part of HelloBooks POS · Architecture / safety

Cashier continuing sales while POS is in offline mode

Offline-first is the difference between “the till is down” and “the till is just selling”. HelloBooks queues orders with a client-generated ClientOrderId, syncs them in order on reconnect, and the server is hard-coded to be idempotent — duplicate IDs are no-ops, not duplicate bills.

HOW IT WORKS

Every detail, dialled in

Built for the till, validated against the canonical accounting engine — so every POS sale closes the books cleanly.

📡

Idempotent ClientOrderId

Every order generated locally carries a UUID. On sync, the server checks if it has seen the ID; if yes, it returns the prior result; if no, it commits. A botched retry does not charge twice.

  • UUID per order
  • Server-side dedup
  • Retry-safe
  • No double-billing
🔁

In-order batch sync

Orders queue with local sequence; on reconnect the till sends them in order. The server commits in order, releases stock, fires e-invoice / e-way as needed, and acknowledges each one.

  • Local FIFO queue
  • Server-side ordering
  • Per-order ack
  • Failure reported per order
🛡️

Inventory reconciliation

Offline mode trusts the last-known stock; on reconnect the engine reconciles. If the offline-sold unit is no longer available (another till sold it concurrently), the post-fact insufficiency is flagged for review and corrective action.

  • Last-known stock for offline
  • Post-fact reconciliation on sync
  • Insufficiency flagged for review
  • Manager-driven resolution

Why teams move off legacy tills

Old POS · Manual workarounds
  • Offline = closed
  • Or offline = double-billing on retry
  • No reconciliation
  • Customer pays twice
HelloBooks POS
  • Offline = selling
  • Idempotent retry
  • Reconciled on sync
  • Customer never pays twice
FAQ

Questions, answered

How long can the till stay offline?

Indefinitely — local queue grows; sync resumes when connectivity returns. We test multi-day offline scenarios.

What about e-invoice during offline?

Bills queue with placeholder IRN; on reconnect, the canonical pipeline fires for each bill in order; receipts can be re-printed with the IRN once available.

Does loyalty work offline?

Earn yes (using last-known balance). Burn — high-value redemption requires online for OTP; low-value can be offline at risk.

How is offline tested?

Continuous chaos tests in CI — random network drops, partial syncs, race conditions. The idempotency contract is the moat.

Ready to automate your books?

Join 2,000+ businesses saving 20+ hours per month. Get started free — no credit card required.

Subscribe to our newsletter

Stay up to date with the latest news and announcements. No credit card required.

By subscribing, you agree to our Privacy Policy.