¶¶Òõ

Skip to main content

POS Online/Offline Data Flow

The following describes how the POS data flows on the network when internet and LAN connectivity is healthy and identifies system components that are impacted when connectivity is lost.

Online Data Flow

The following provides a background of how data flows in the system when internet and LAN connectivity is healthy.

Component

Description

Cloud Message Queue

POS terminals retrieve cloud service messages from site-specific AWS SQS queues and share the messages with other terminals on the local network (via DataSync).

Cloud message examples:

  • Delivery Service Provider orders

  • Employee Schedule updates

  • Employee Status updates

  • Mobile Orders

  • Refresh Config Data requests

Configuration Updates

Data Management and Portal updates are consumed by POS on user demand, scheduled events, and on admin command via HTTP requests to ¶¶Òõcloud endpoints.

DataSync

Transactional data is synchronized between all POS terminals (including tablets) to ensure data is available in the event connectivity is lost.

Digital Menu Boards

DMBs consume content and configuration updates (including pricing) from ¶¶Òõcloud.

Esper Commands

The Esper client consumes and executes MDM and remote support requests.

Kiosks

Kiosks consume menu data from ¶¶Òõcloud and send orders via ¶¶ÒõXOO cloud service, which in turn sends them to POS via the SQS cloud message queue.

Loyalty

Loyalty requests received by ¶¶ÒõGift and Loyalty service (XGL) are sent to the Loyalty provider where responses are processed and returned to POS.

NTP Server Time Synchronization

Synchronizes clock on devices.

Order Confirmation Boards

POS sends order confirmation payloads to networked OCB devices via HTTP requests.

Payment Processing

Payment requests sent to payment devices are processed via payment gateway/processors.

PerfectCo KDS

POS publishes order events over the local network to each PerfectCo kitchen station via In-Store Data Feed (XPES) using a TCP socket connection.

POS Terminal Message Queue

Transactional data is enqueued on the POS terminal where the transactions were performed. Messages in the queue are sent to the ¶¶Òõcloud via the ¶¶ÒõPipeline where they are processed in near real-time.

Data type examples:

  • Deposits

  • Drawer Sessions and Drawer Events

  • Email and SMS Receipt Notifications

  • EOD Notifications

  • Logs

  • Orders

  • Product Availability Updates

  • Workflow Executions

Printers

Wired and network printers are available for all print requests, including reroute requests.

Rear-Facing Customer Displays

POS sends order confirmation payloads to rear-facing displays via HTTP requests on the local terminal. Customer Displays consume configuration updates from the ¶¶Òõcloud.

Site Status

POS terminals publish a site status message to the ¶¶Òõcloud every two (2) minutes. The status message includes site details, the sending terminal, and other terminals from which system health and availability is determined.

Software Updates

POS checks for software updates upon defined events (Startup, EOD) and applies pending updates automatically.

Subscription Validation

POS terminals validate the site's active subscription for the application and store the date/time of the last successful validation.

Time Punches (Time Clock)

Employee time punches are sent to the ¶¶ÒõStaff module in the cloud via HTTP requests. Once processed, the time punches are synchronized between POS terminals via Datasync.

Offline Data Flow

The vast majority of system functions are unaffected in the event internet or LAN connectivity is lost. Users can continue to place orders and perform all mission-critical operations to service guests.

This section describes how the system is impacted when disconnected from the internet or LAN.

Loss of Internet

The following identifies system components that are impacted when disconnected from the internet.

Component

Description

Cloud Message Queue

POS cannot consume messages from the cloud queue. Messages accrue until connectivity is restored, at which point POS automatically consumes them in the background with no user intervention required.

Impacted functionality includes:

  • Mobile and Delivery Service Provider (DSP) orders cannot be consumed.

  • Employee updates cannot be consumed, including updates to employment status, site status (including borrowed employees), scheduled shifts, and new hires.

    All employee data consumed prior to connectivity loss is available while offline.

  • Remotely initiated commands cannot be consumed, including requests to Refresh Config Data, initiate a Cloud Restore, and Clear Transactional Data for first day go-live.

Configuration Updates

Configuration updates cannot be consumed.

Digital Menu Boards

Configuration and product availability updates cannot be consumed.

Esper Commands

The Esper client cannot consume requests, including remote viewing, screenshot capture, application installation, and OS setting updates.

Gift Card Processing

Gift card processing is unavailable.

Kiosks

Kiosks cannot accept orders or consume configuration updates.

In the future, an in-store API will be provided for kiosks to eliminate the internet dependency for ordering.

Loyalty (Beanstalk)

Loyalty identification and redemption are unavailable.

Loyalty identification attempts are persisted with respective orders and are submitted for credit once connectivity is restored.

NTP Server Time Synchronization

If configured to be an internet time server, time synchronization is interrupted and drift may occur.

Order Confirmation Boards

Content updates cannot be consumed. Previously consumed content, including day part configurations, is not impacted.

Payment Processing

Payments (other than gift cards) are processed in accordance with configured offline rules.

POS Terminal Message Queue

POS transactional data cannot be sent to the ¶¶Òõcloud and is not accessible to above-store services.

Messages accrue until connectivity is restored, at which point POS automatically sends them to the cloud in the background with no user intervention required.

Impacted functionality includes:

  • Deposits

  • Drawer Sessions and Drawer Events

  • Email and SMS Receipt Notifications (requests are enqueued until connectivity is restored, at which point receipts are delivered)

  • EOD Notifications

  • Logs (once connectivity is restored, POS logs are sent to the cloud)

  • Orders (including Touchless Payments)

  • Product availability updates (86) cannot be applied for mobile orders, DSP integrators, Digital Menu Boards, and Kiosks.

    Product availability updates and synchronization between POS terminals remains available.

  • Workflow Executions

Rear-Facing Customer Displays

Content updates cannot be consumed. Previously consumed content, including day part configurations, is not impacted.

Site Status

Site status cannot be sent to the cloud. Integrators can see sites are offline and can elect to disallow mobile and DSP order injection. Terminal information cannot be seen by above store services.

Software Updates

Software updates cannot be consumed. When connectivity is restored, pending software updates are applied when a triggering event occurs.

Subscription Validation

POS cannot validate its subscription. The 30-day grace period begins, after which the application will not run.

Time Punches (Time Clock)

Employee time punches cannot be sent to ¶¶ÒõStaff. When connectivity is restored, employees are notified their time punch was not recorded and a chit is printed to provide to their manager.

Offline time punch processing will be available in the future.

Loss of LAN

If a terminal loses connection to the local network, the same limitations identified for loss of internet are observed. The following identifies additional components that are impacted when LAN connectivity is lost.

Component

Description

DataSync

Data sharing between terminals is unavailable. Impacted functionality includes:

  • Order sharing between terminals is unavailable (e.g. recalling Saved drive thru orders from different terminal).

    Orders synchronized prior to connectivity loss are available on all terminals.

    Once connectivity is restored, orders are synchronized to all terminals in the background with no user intervention required.

  • POS reports are limited to local terminal data and cannot provide accurate store-wide reporting.

  • Product Availability Updates (86) are not synchronized between terminals until LAN connectivity is restored.

  • Time Punch events are not synchronized between terminals. If not already clocked in prior to connectivity loss, users must clock in on each terminal they want to use.

NTP Server Time Synchronization

If configured as local time server (e.g. router-based), time synchronization is interrupted and drift may occur.

Order Confirmation Boards

Output to OCBs is unavailable. Once connectivity is restored, POS resumes sending new orders.

Payment Processing

Payment processing is unavailable on networked devices. Terminals with Bluetooth or wired connections (USB, Serial) are not impacted.

PerfectCo KDS

Orders are not sent to PerfectCo.

Once connectivity is restored, updates to orders that were created while offline are sent, but order events that occurred while offline are not sent automatically.

Printers

Network printers are unavailable.

USB and Serial printers remain available for terminals to which they are physically connected.

Things to Know

Cloud Message Queue

When a unit comes back online, will it receive all orders that have queued while the unit was offline?

Yes, the unit receives all orders in the queue once the unit is back online.

When a unit is offline, the integrator who submitted the order receives a notification and determines how to handle the delay. See Notification Service in Company Preferences for more details.

Loss of LAN

Which POS reports are impacted?

POS reports are limited to local terminal data and cannot provide accurate store-wide reporting.

  • Sales Detail Report (SDR) - Offline terminals will report different sales totals until reconnected.

  • Employee Audit Report - If employee performs transactions on multiple offline terminals, the terminals will report different sales totals until reconnected.

What is the impact of clock in/out records on multiple terminals?

The Staff module receives offline time punches and determines if any conflicting clock in/out records should overwrite existing data. Updated time punch data is sent via Data Stream.

What is the overall impact of connectivity loss between POS terminals and kitchen stations?

Each POS terminal can still print to their physically connected printer. Employees can print a copy of an order receipt to provide to Kitchen staff.

NTP Server Time Synchronization

Will time drift resolve itself once a unit is back online? Are there situations where the date could drift resulting in an incorrect business date?

If drift is outside of tolerance when connection to the NTP server is reestablished, the drift will resolve itself.

Because business date advancement is based on system date/time, drift can cause a terminal to be on an unexpected business date for a number of seconds.

For instance, if a terminal's internal clock drifts behind the expected time by five (5) seconds, EOD and business date advancement is delayed by five (5) seconds.

The business date never rolls back as a result of synchronization. It can only advance forward.