Reporting
Operations, sales, menu, labor, receipts, and cash close in the current restaurant build.
Openfront Restaurant has a reports hub, an operations dashboard, and money screens for receipts and the daily cash close. They answer the questions an operator asks after a shift. They are not a data warehouse.
Reporting screens
Operations
Live counts for open checks, kitchen load, tables, and quick links. Route: /dashboard/platform/operations.
Sales report
Revenue, orders, average check, guests, dayparts, order type, and payment mix.
Menu performance
Item and category performance from completed order items.
Labor report
Approved hours, labor cost, labor percentage, tips, and role breakdowns.
The hub at /dashboard/platform/reports links to Sales Overview, Menu Performance, and Labor & Staffing. It also lists Revenue Analytics, Customer Insights, Inventory Cost Tracking, and Comparative Period Reports as "Soon". Those four do not exist.
Operations dashboard
/dashboard/platform/operations (also in the sidebar as "Operations") uses GetOperationalMetrics. It shows:
- open, in-progress, and ready orders
- occupied and total tables
- today's net food collections and order count
- recorded order voids and cancelled orders
- quick links to POS, KDS, orders, and the sales report
Sales report
/dashboard/platform/reports/sales uses GetSalesOverview and GetPaymentBreakdown. It covers:
- net collected on completed checks, total orders, average check, and total guests
- tax, tips, and discounts
- comparison with the previous period
- daypart trends (breakfast, lunch, dinner, late night)
- order type mix (dine-in, takeout, delivery)
- payment method mix
Menu performance
/dashboard/platform/reports/menu-performance uses GetMenuItemPerformance and GetCategoryPerformance on completed order items. It sorts items into Star, Plow Horse, Puzzle, and Dog groups and shows category revenue. GetServerPerformance is also defined in the report actions.
Labor report
/dashboard/platform/reports/labor uses GetLaborData. It combines restaurantAttendance, calculated or distributed tip pools, and completed orders. See Staff and labor.
Receipts
/dashboard/platform/receipts lists Receipt records: sale, refund, and correction. Receipts are written by the server when a payment succeeds or a refund is made, and are not edited. You can filter by check ID, view a receipt, print it from the browser, and export the list as CSV. Amounts are in minor units of the recorded currency.
Cash and business-day close
/dashboard/platform/reconciliation ("Cash & Close" in the sidebar) manages the business day. All actions need payment permissions:
openRestaurantBusinessDaywith an opening cash float and optional cutoff minutes. Only one day can be open.recordRestaurantCashMovementfor cash in or out with a reason.closeRestaurantBusinessDaywith counted cash and a reason. Closed totals cannot change.recordRestaurantSettlementto attach processor statement evidence (reference, method, gross, fees, net).restaurantBusinessDaysandrestaurantBusinessDayread the history.
Business days are stored as AuditEvent rows, not their own list. Payments processed after a close are carried into the next day.
Where reporting is still early
- The four "Soon" reports on the hub are not built.
- Report pages export nothing except receipts, time entries, and tip ledgers (CSV).
- There is no forecasting, scheduled report, or accounting export.
- Recipe-based food cost only appears on the recipes page, not in reports.
Sales figures come from completed orders. Open checks do not show up in sales until they are closed.