Running a POS Checkout Session
A POS session is a single service period on a terminal, for example one lunch service at one school. This article walks through what a cashier does from opening the POS app to ending the session at the end of service.
Before You Start
The device needs to already be paired to a Gaia terminal. If the POS app opens to a registration screen, see Setting Up POS Terminals for how to register a device. Once registered, opening the app takes you to the Meal Select screen.
If your terminal is a touchscreen or Chromebook with no physical keyboard, an on-screen keyboard appears automatically when you tap a text field. See Using the On-Screen Keyboard.
The Meal Select Screen
The Meal Select screen lists every meal program configured for this terminal (Breakfast, Lunch, etc.). Each meal button shows the meal icon, the meal name, and the number of transactions already processed today (e.g., "12 transactions"). The header bar shows the school, district, current time, online/offline status, and Last synced: ….
From the gear icon (top right) you can:
Sync Now: force a fresh pull of templates, students, and transactions from the server. Disabled when offline or already syncing — the label flips to Syncing... while a sync is in progress.
Debug Info: view the Device ID and Terminal Registration JSON, useful when contacting support.
A Logout button at the bottom signs the user out of the POS app entirely.
Starting a Session
Tap the meal you want to serve. Depending on how the meal's template is configured, you may be asked to enter a Staff PIN to identify the cashier running this session (a Skip option is available where the template allows).
If Cash Acceptance is enabled on the template, the next prompt is the Starting Cash Balance dialog — a bill-by-bill count of $1, $5, $10, $20, $50, and $100 bills (no coins). The starting amount is saved on the session record for end-of-day reconciliation.
Service Day and Service Hours Warnings
Two automatic checks run when a session opens:
Service Disabled day: if the district has marked today as a non-service day (holiday, snow day, etc.), a confirmation dialog asks "Today there is no service, are you sure you want to proceed?" Closing the dialog ends the session; confirming lets you serve anyway.
Outside service hours: if the current time is outside the meal's configured service window, a warning dialog appears with End Session and I Understand options. The warning is informational — you can dismiss it and continue serving.
The Session Toolbar
While a session is running, the dark green bar at the top of the checkout screen shows:
The meal icon and a running count of completed transactions for this terminal, meal, and day. The icon turns orange when transactions are queued to sync; hover for the unsynced count.
The current time and meal name.
The signed-in cashier's name (if PIN sign-in was used).
The terminal's location description (e.g., "Main Cafeteria Line 1").
A hamburger menu (☰) for ending the session.
Ending the Session
When service is over, open the hamburger menu in the session toolbar and tap End Session. The Review Session dialog opens.
The dialog shows two tiles at the top:
Total Transactions: count of all transactions processed during the session.
End Session: tap to finalize and close out.
Below those, any Flagged Transactions from the session are listed so you can review them before closing out. If there are none, you'll see "No flagged transactions."
If Cash Acceptance is on, the Ending Cash Balance dialog appears as part of the close-out so you can count the drawer back down to a starting balance for the next service.
Session Notes
If the template has Session Notes Required turned on, a required Session Notes * field appears in the Review Session dialog with helper text "Session notes are required." The End Session tile is disabled until you type something. The notes are saved on the session record.
Auto-End
Gaia attempts a best-effort auto-end in three situations so a session doesn't stay open indefinitely:
A previous-day session that's still open when you launch the app — auto-ended at that previous day's midnight.
A local-midnight timer on the device that ends the current session at midnight.
A browser or tab close event (page hide) on the device.
Auto-end does not show the Ending Cash Balance dialog, so the cash count is skipped on auto-ended sessions. Whenever possible, end the session manually so you can confirm the cash count and review flagged transactions.



