Building a Voice AI Agent Platform for Restaurant Operations
- Client
- WaveAI
- Services we provide
- Industry
- Restaurant Technology, SaaS
WaveLine AI gives restaurants an AI voice agent that picks up the phone, takes pickup orders, books reservations, and answers common questions - no human needed. We worked with the founder to turn this idea into a production-ready SaaS platform in under four months.

12
AI agent function tools
~4 months
From idea to production MVP
4
Team members, full delivery
95%
Phone scenarios covered by the agent
The Challenge
Restaurants miss calls during peak hours - orders and reservations just slip away.
The founder needed an AI voice agent that could hold a real conversation, not a robotic phone tree.
One that takes multi-item orders with modifications, books reservations, and answers menu questions reliably.
Beyond the agent, the scope included an iPad app, web admin, billing, EU-compliant phone provisioning, and a landing page - all on a startup budget.

The Solution
Voice AI Agent
Python/FastAPI backend integrated with Twilio, Deepgram, and OpenAI. Handles ordering, reservations, FAQ, and opening hours through 12 function tools querying live restaurant data.
iOS Mobile App
React Native/Expo iPad app distributed via TestFlight. Full onboarding flow, live order management, reservation tracking, and subscription billing.

Web Admin Dashboard
Next.js admin interface for monitoring restaurant accounts, agent usage, and conversation transcripts.
Billing & Subscriptions
Stripe integration with four usage-based tiers (€99-€529/month), calculated from average daily call volume during onboarding.
Voice AI agent, built to production quality
How We Delivered
Ran structured discovery with the client to define the 95% of phone scenarios the agent needed to handle
Designed the full product in Figma - wireframes and clickable prototype tested on a physical iPad
Set up a Turborepo monorepo with three apps sharing a Supabase backend
Evolved the agent from prompt-only to tool-based architecture - replacing raw menu data with structured function calls to live data
Kept a tight feedback loop via shared Slack channel with weekly updates from the first deployed version

Tool-Based Agent Architecture
We built a structured eval harness from the client's real phone scenarios - the same calls the agent would handle in production. It brought deterministic scaffolding into a non-deterministic system, catching hallucinations and regressions before they reached callers.
Built for Voice, Not Chat
Voice has constraints chat doesn't - audio overlap, latency, turn-taking. Removing a TTS acknowledgment layer that added seconds of dead air per tool call was the single biggest improvement.

Dive deeper into the technical details
Read our Tech Lead's post on fixing a voice agent using Karpathy's autoresearch blueprint
💻 Tech Stack
Technologies used to power the platform
React Native / Expo
Python / Fast API
Next.js
Supabase
Twilio
Deepgram
OpenAI
Stripe
Hetzner VPS
Every product starts with a conversation
Drop us a line, and we will handle the rest
What impresses me most is their relentless dedication. Even when things got tough, they pushed through every challenge, adapting and communicating in ways that felt truly personal. It's that combination of tenacity and personal care that made them stand out.
You might also be interested in


