GoHighLevel · 03
Catering CRM & Operations Dashboard
The ordering, CRM and back-office system for a multi-branch catering business. Orders are tracked as opportunities in a GoHighLevel pipeline, and a custom operations dashboard reads those bookings to plan each kitchen's day, check payments and report profit, then writes stage changes back to GoHighLevel. Owners, admins, kitchens and event teams work from the same records instead of passing orders along by hand.
- Built for
- Spandis CateringCatering business
- Stack
- GoHighLevel
- GoHighLevel API
- React
- Supabase
- Vercel
01 / 10

Image 1 of 10: Operations dashboard overview with revenue, inquiries, bookings and pipeline value
The dashboard screenshots use fictional sample data in a demo build.
Overview
The problem. Bookings arrive in the CRM, but a CRM doesn't plan kitchen production, check payments or produce financial reports. With several branches, the business needed one view of what each kitchen cooks each day, a way to match deposits and balances against receipts and bank statements, and profit per cut-off period, while ordering, sales and kitchen work depended on manual handoffs between admin and kitchen staff.
What I built. Customers plan an order on the website's meal builder: they choose a service such as party trays, packed meals or a catering package, set the number of guests, pick their dishes and see the total. In GoHighLevel, every order is an opportunity in the Spandis Ordering System pipeline, moving from New Inquiry and Quotation Sent to Confirmed, Preparing and Completed/Delivered, with Cancelled and Rescheduled stages, and the forecast shows expected and won revenue by stage.
I also built the operations dashboard on top of it. It reads opportunities and appointments from GoHighLevel through its API and turns them into each team's view: a daily production board and per-order sheets for the kitchens, packing checklists for event crews, a payment chain from ordered to confirmed in the bank, and profit, branch and break-even reports for the owners. Kitchen updates such as stage changes are written back to GoHighLevel, and each account opens only the pages and branches it's allowed to.
Why it helps. Everyone works from the same orders, from the website and the pipeline to the kitchen sheets and the owner's profit report, with fewer manual handoffs between admin and kitchen.
GHL system flow
- On the website's meal builder the customer picks a service, the number of guests and the dishes, and sees the total. Components: Website ×3 (Plan My Menu, Package builder, Cart). Next: Ordering pipeline.
- Each order is an opportunity in GoHighLevel, moving from New Inquiry and Quotation Sent to Confirmed, Preparing and Completed/Delivered. Components: Pipeline (Spandis Ordering System); Stages ×7 (New Inquiry, Quotation Sent, Confirmed, Preparing, Completed/Delivered, Cancelled, Rescheduled); Forecast (Expected and won revenue by stage). Next: Dashboard sync.
- The operations dashboard reads opportunities and appointments through the GoHighLevel API. Components: GoHighLevel API ×2 (Opportunities, Appointments); Database (Supabase Postgres). Next: Kitchen & events, Payments.
- Kitchens work from the daily order board and per-order sheets; event crews pack against work orders. Stage updates go back to GoHighLevel. Components: Dashboard pages ×4 (Kitchen Today, Kitchen Board, Market List, Work Orders); GoHighLevel API (Pipeline stage updates). Next: Ordering pipeline.Admins verify receipts, match payments to bank statements and follow up on balances. Components: Dashboard pages ×2 (Payments & Refunds, Sales). Next: Owner reports.
- Owners see profit by cut-off period, branch performance and break-even targets. Components: Dashboard pages ×3 (Owner Financials, Branch Performance, Break-even). End of flow.
The order workflows and the Conversation AI order assistant are on the Automation page (Catering Order & Event Automations).
Key GHL components
- Pipeline: Spandis Ordering System, New Inquiry to Completed/Delivered, plus Cancelled and Rescheduled
- Opportunities: one per order, named by event and customer, with the order value
- Forecast: expected and won revenue by stage
- Appointments: read with each booking by the dashboard
- API: the dashboard syncs opportunities and appointments and writes stage updates back
- Workflows and Conversation AI for order follow-up (Automation: Catering Order & Event Automations)
Integrations
- GoHighLevel CRM API
- Supabase (Postgres, Auth, Realtime, Storage)
- Sentry (opt-in)