Skip to content
Ahmad Affan
Index01Work02Services03Process04About05FAQ06Blog
Open to new projects--:--Rahim Yar Khan · UTC+5Start a project

Have something worth building?

Start a project[email protected]
Ahmad Affan

Full-Stack Developer building web apps, bots and AI agents for founders and small teams worldwide.

Services

  • SaaS platforms
  • Telegram and WhatsApp bots
  • AI voice agents
  • Websites and WordPress
  • Automation and integrations
  • Trading automation

Case studies

  • Appex Market
  • TelegramCopy
  • Appointox
  • VoxPilot
  • All work

Get in touch

  • Email
  • Telegram
  • LinkedIn
  • GitHub
  • Fiverr
Ahmad Affan.
© 2026 Ahmad AffanBack to top ↑
← All work

SaaS · Booking and AI voice

Every booking, automated, on the web, in chat and by phone.

Multi-tenant booking SaaS with subdomain sites, chat bots and an AI phone agent.

My role
Full-stack: tenancy, scheduling, CMS templates, bots, AI voice agent, billing
Built with
ReactFastAPIMongoDBRetell AIStripe
Type
SaaS built for a client
Live site
appointox.com
appointox.com
Appointox website, scrolling preview
Overview

Appointox is a booking platform for service businesses such as salons, clinics, spas, gyms and consultants. Every business gets its own subdomain website, admin dashboard, booking system, messaging bots and, on the top plan, an AI voice agent, all isolated by tenant.

Customers can book from the branded site, from Telegram or WhatsApp, or by phone. The voice agent checks real availability and creates the appointment while the call is still going.

Plans
Starter $100 · Growth $150 · Pro $200 per month
Trial
14 days free · 30-day money back
Channels
Web · Telegram · WhatsApp · Voice
How it works
  1. Business signs up

    A tenant is created and a {slug}.appointox.com subdomain is registered automatically through the Cloudflare DNS API.

  2. Subdomain resolves to a tenant

    Middleware maps the host to the right tenant, so data and branding never mix.

  3. Customer books

    On the public site or widget, in a Telegram/WhatsApp chat, or by phone.

  4. Voice agent reasons live

    Retell streams the call to a custom LLM WebSocket where OpenAI function calling checks availability and books.

  5. Reminders go out

    An email outbox and a reminder worker notify the customer; staff see everything in their dashboard.

What it does

Tenant-isolated everything

Subdomain routing, per-tenant data and branding, JWT auth with role-based dashboards and a super-admin.

Scheduling engine

Availability slots, specialists and staff, booking codes and a token-based customer portal.

Template registry and CMS

Industry templates in basic and premium tiers, with a content and style editor.

Chat bots

Per-tenant Telegram and WhatsApp credentials with chat booking and webhooks.

AI phone agent

Retell phone agents backed by a custom LLM WebSocket using OpenAI function calling.

Billing

Stripe subscriptions across Starter, Growth and Pro, with billing UI in the dashboard.

Tech stack
FrontendReact 18TypeScriptVite 5Tailwind 3Framer MotionRecharts
APIPythonFastAPIUvicornPydantic Settings
DataMongoDB (Motor / PyMongo)
IntegrationsRetell SDKOpenAIStripepython-telegram-botWhatsAppSendGrid / SMTPGoogle Calendar
InfraCloudflare DNS and SSLIISDedicated SSL path for Retell WebSockets
What I built
  • Tenant onboarding with automatic subdomains
  • Scheduling, availability and staff model
  • Template registry and CMS editor
  • Telegram, WhatsApp and AI voice integrations
  • Stripe plans, email outbox and reminder worker
More work
SaaS built for a client
voxpilot.org
VoxPilot website, scrolling preview

VoxPilot

AI outbound calling control panel: agents, campaigns, transcripts and live transfers.

ReactDjango · DRFVapiCelery
My own SaaS
appexmarket.online
Appex Market website, scrolling preview

Appex Market

A multi-tenant SaaS that turns Telegram into a storefront, with crypto checkout.

Next.jsFastAPIMongoDBTelegram Mini App

Want something like this for your business?

Start a project