Skip to content

Offline Mode of Client Application

Favy Client App is a PWA (Progressive Web App), which means some data is stored directly on the client's device. This allows the app to continue working even when there is no internet connection — due to a weak signal indoors, unavailable Wi-Fi, or temporary mobile network outages.

What is important for businesses to know

Offline mode is enabled by default for all Favy clients on all subscription plans. No additional configuration is required.

What is available offline

Action in Client App (without network connection on client's side)Available offline
Viewing the last known point balance
Displaying client's QR code (for checkout identification)
Awarding/deducting points by cashier using client's QR code✔ (requires connection at the point of sale, not the client's side)
Viewing transaction history (last loaded transactions)
Balance update after a new operation✖ (client needs network connection to pull data from the server)
First login / new client registration✖ (requires network connection once)
Push notifications and campaigns✖ (require network connection)

How it actually works

It is important to understand the data model: nothing is written or stored as a queue of operations on the client's device. The sole source of truth is the Favy server.

What is visible offline (point balance, QR code, transaction history) is the last known state that the app received from the server during its last successful network connection and cached locally for display. It is specifically a cache for viewing, not a working copy of the data.

Awarding and deducting points is always an operation performed by the point of sale (cashier), not the client application. If the point of sale has an internet connection, the operation goes through and is recorded on the server immediately — regardless of whether the client's phone has internet access at that moment. The client application does not need network connection at all for the point transaction to happen: it only needs to display the QR code for client identification.

After the transaction is processed at the point of sale, the client's app needs to connect to the network again to fetch the updated balance from the server — until then, the screen will display the balance known at the time of the last successful connection.

Important for support

Since offline data on the device is a read-only cache, not a local queue of operations, synchronization conflicts (like double deduction, race conditions between devices, etc.) do not occur on the client application level: the only place where the operation is recorded is the server.

If a client sees a balance on the screen that "does not match reality", it almost always means that the app has not had a chance to update its cache since the last operation — they just need to open the app with an active internet connection.

Offline Mode Limitations

First login to the application and registration of a new client require an internet connection at least once — the application needs to retrieve account data from the server. After that, the app can work offline indefinitely using the already loaded data.

Push notifications, marketing campaigns, and any actions requiring real-time server communication (e.g., applying a promo code linked to an external system) are unavailable without a network connection.

Frequently Asked Questions

A client complains that points did not update immediately after purchase — what to do? The transaction (point award/deduction) has already been processed on the server (provided the point of sale had a connection at the time of the transaction) — the client simply needs to open the app with an active internet connection to pull the updated balance from the server. Until then, the screen will show the balance known at the time of the last connection.

Can a client "cheat" points by showing the QR code multiple times offline? No — point award and deduction occur on the server side when the cashier processes the transaction at the point of sale. The client application only displays the QR code for identification; it cannot create or modify transactions itself, so local balance manipulation is impossible.

Do I need to enable offline mode in the settings? No, it works by default and does not require configuration.

Does the offline mode in the POS app at checkout work the same way as in the client app? The offline mode of the client application (this page) concerns the client's device. A separate offline mode functionality for POS/checkouts is currently under development and will be described separately once it is ready.