Inspiration

In fast-food restaurants, mistakes often happen between the POS order and the actual food tray given to customers. During peak hours, staff work under time pressure, which leads to wrong items, missing items, or incorrect quantities. These mistakes cause customer complaints, food waste, and slower service.

We wanted to build a system where AI acts as a final verification step before the tray is handed to the customer. Instead of replacing the cashier, the AI checks whether the tray matches the POS order and alerts staff if something is wrong.

This idea came from observing how many operations in restaurants are still manual and error-prone, and we saw an opportunity to apply computer vision and generative AI to solve a real operational problem.


What it does

OrderLens is an AI-powered tray recognition system that verifies whether the food items on a tray match the POS order.

The workflow is simple:

  1. The cashier creates an order in the POS system (items and quantities).
  2. A photo of the food tray is captured using a webcam or uploaded image.
  3. AI analyzes the image and detects the items and their quantities.
  4. The system compares detected items with the POS order.
  5. The system reports whether the tray matches the order or if there are missing, extra, or incorrect items.

This helps reduce order mistakes, improve service accuracy, and reduce customer complaints.


How we built it

We built the MVP with a simple and scalable architecture.

The frontend is built with Next.js and provides:

  • POS order builder interface
  • Tray image upload or webcam capture
  • Verification result dashboard

We used a Next.js API route as a lightweight backend layer to:

  • Receive the order and tray image
  • Build prompts for the AI model
  • Call Google Gemini Vision API
  • Return structured JSON results

The AI model analyzes the tray image, detects items based on a fixed menu, and returns detected items and quantities. The system then compares the detected items with the expected order and determines whether the tray matches the order.


Challenges we ran into

One of the biggest challenges was making AI reliably detect items from tray images. Lighting conditions, camera angles, and packaging similarities can affect detection accuracy.

Another challenge was designing structured AI output so the system could automatically compare detected items with the POS order instead of relying on free-text AI responses.

We also had to carefully design the demo environment to ensure consistent image capture and reliable results for the hackathon demonstration.


Accomplishments that we're proud of

We are proud that we were able to:

  • Build an end-to-end AI + POS integration prototype
  • Implement image-based tray verification
  • Design structured AI output for automated comparison
  • Create a working MVP within hackathon time constraints
  • Demonstrate a real business use case instead of just a demo AI app

Most importantly, we built a system that solves a real operational problem rather than just a technical experiment.


What we learned

Through this project, we learned:

  • How to integrate AI vision models into real applications
  • How to design structured prompts and JSON outputs for AI systems
  • How to build a frontend-first architecture with serverless API routes
  • How to design systems for real-world business workflows
  • How important it is to control environment and scope for AI demos

We also learned that AI works best when it assists humans rather than replaces them.


What's next for OrderLens

In the future, we want to extend OrderLens into a full smart restaurant system:

  • Real-time camera tray detection
  • Integration with real POS systems
  • Inventory tracking based on tray detection
  • Analytics dashboard for order accuracy
  • Edge AI camera device for restaurants
  • Automatic billing based on tray contents
  • Self-checkout tray verification

Our long-term vision is to build AI-powered operational tools for restaurants and retail environments.

Built With

Share this project:

Updates