# 0002. Offline-first

- Status: Accepted
- Date: 2026-10-27

## Context

Many Malaysian shops have unreliable internet. A point of sale that stalls at the counter when the connection drops loses sales and trust.

## Decision

Taking an order, totalling, paying, printing and closing a shift never wait on the internet or on any remote call. Every device keeps what it needs locally (catalog, staff, its own event log) and syncs in the background when a link is available.

## Consequences

- No network call (hub, cloud, telemetry, update check) may sit on the path of taking, paying or printing an order.
- Devices need local storage and their own copy of the domain logic (see [ADR 0009](https://docs.openkedai.com/adr/0009-two-apps-shared-core/)).
- Sync must tolerate long offline periods and resent data (see [ADR 0004](https://docs.openkedai.com/adr/0004-event-log-source-of-truth/)).
