ARA AI

AI Phone Receptionist SaaS for the GCC

ARA AI - AI Phone Receptionist SaaS for the GCC app interface screenshot

Tech Stack

Retell AI
React
TanStack
Supabase
PostgreSQL
Hono
Stripe
OpenAI API
Astro

About the Product

ARA AI is a full SaaS platform that gives clinics and restaurants across the GCC an AI phone receptionist. “Hala,” the AI voice agent, answers every inbound call 24/7, holds a natural conversation, checks real-time availability, and books appointments autonomously — with the confirmed booking landing in the business’s dashboard instantly.

I built ARA AI end-to-end as the sole engineer: the voice agents, telephony infrastructure, booking engine, multi-tenant dashboard, billing, and marketing site.

My role: Full-Stack Engineer (solo) — Voice AI, Backend, Dashboard, Billing.

The Challenge

Building a production voice-AI product for the Gulf region meant solving problems most AI demos never face:

  • Real-time voice reliability: Callers won’t tolerate latency or dropped context. The AI has to sound like a trained receptionist, handle interruptions, and confirm details accurately on live phone calls
  • GCC telephony: Provisioning reliable local phone numbers across six Gulf countries is far harder than in the US/EU markets most providers optimize for
  • Two very different verticals: Clinics need multi-doctor scheduling, patient data collection, and status workflows; restaurants need covers management, dietary requirements, and walk-in tracking
  • True multi-tenancy: Each business needed isolated data, per-location booking rules, team roles, and its own configured AI, with strict security guarantees

The Solution

AI Voice Layer

  • Custom conversation design on Retell AI-powered voice agents: availability checks, booking confirmation read-back, cultural greetings, and configurable tone (formal / friendly / hospitality)
  • Specialized agents per vertical — a clinic agent and a restaurant agent, each with conversation flows built for its domain
  • Scalable multi-tenant agent architecture: multiple business phone numbers route to a shared agent, with dynamic variables injecting each business’s identity, locations, services, and booking rules at call time, so every caller gets a receptionist that knows exactly which business they called
  • Multiple concurrent call handling for peak hours
  • Full call transcripts stored and viewable per booking
  • Honest AI disclosure built into the conversation design

Booking Engine

  • Autonomous real-time booking with double-booking prevention, buffer times, per-type durations, and cancellation policy enforcement
  • Clinic mode: multi-doctor scheduling, patient roster with visit history, new vs. returning detection, and a status workflow (Pending, Confirmed, Checked In, Completed, No-show)
  • Restaurant mode: party size and covers capacity per slot, seating preferences, special occasions, dietary requirements, and daily walk-in tracking

Dashboard (React + TanStack)

  • Operational overview: KPI dashboard, calendar and list booking views, call transcript viewer, missed-call alerts, and an activity feed
  • Per-location settings: opening hours with GCC weekend presets, booking rules, and AI data-collection toggles
  • Team roles and permissions, webhooks, and API keys
  • Bilingual interface: full Arabic and English with RTL layout support and local currency display

Backend & Infrastructure

  • Supabase: PostgreSQL database, auth, and storage, with Row Level Security enforcing complete tenant isolation
  • Hono API layer with built-in security middleware
  • Stripe subscription billing: three tiers, metered AI-minute usage tracking, and a self-serve billing portal
  • Astro marketing site — fast, SEO-optimized, and bilingual

Production Challenges Solved

One-week telephony migration

Mid-build, the original telephony provider (Telnyx) proved unreliable for GCC numbers. I evaluated alternatives and migrated the entire telephony layer to DIDlogic in one week with zero downtime for existing customers. DIDlogic required manual provisioning steps that Telnyx automated, so I built internal tooling to absorb that complexity — customers still go from signup to live calls within 48 hours.

Custom call-termination agent

When Retell’s native call-drop proved unreliable, I built a dedicated third agent whose sole job is to gracefully end out-of-scope calls, informing the caller no one is available and hanging up. Because this agent has no other capabilities, it also acts as a security barrier: even a caller attempting prompt injection can’t steer it beyond ending the call.

Results & Impact

ARA AI went from concept to a live, revenue-generating SaaS serving clinics and restaurants across Saudi Arabia, the UAE, Kuwait, Qatar, Bahrain, and Oman. Businesses go live within 48 hours of signup and never miss a call — the AI answers instantly, books accurately, and costs a fraction of a human receptionist.

The architecture is what makes that economically viable: a shared multi-tenant agent pool driven by dynamic variables means onboarding a new business is a configuration change, not a new deployment. Row Level Security guarantees tenant isolation at the database layer rather than in application code, and metered Stripe billing ties revenue directly to AI-minute consumption.


Interested in AI-powered product development? Explore Nimbus, an AI study companion built with Flutter and Mistral AI, or Lumbra, a fitness app with video streaming and gamification. You can also read my technical tutorial on building BLE-controlled devices with Flutter and ESP32.

More Projects

Have a project
in mind?

Book a call