Skip to main content
Web ApplicationCompleted

HeyPilot: Multi-Tenant Voice AI Platform for Customer-Facing Teams

A multi-tenant voice AI SaaS for customer service, outreach campaigns, and appointment workflows, with a no-code assistant builder, white-label widgets, a KVKK encryption layer, IYS-ready consent capture, and a real credits ledger, running in production at heypilot.com.tr.

DeveloperMustafa Kürşad Başer
Started: Dec 2025Completed: Jun 2026
HeyPilot: Multi-Tenant Voice AI Platform for Customer-Facing Teams

HeyPilot is the platform a business reaches for when "let's build a voice AI" turns into "let's not stitch together VAPI, OpenAI, ElevenLabs, Deepgram, Cloudflare, and a database layer ourselves". It runs in production at heypilot.com.tr as a Turborepo-based monorepo with separate admin and customer Next.js apps sitting on top of a Prisma and PostgreSQL backbone, shared packages for the integrations and the compliance layer, and a billing system that tracks every credit reservation through to settlement.

The product targets four kinds of buyers: SMBs and enterprises in Turkey running customer support, sales follow-up, or appointment-heavy operations; agencies that resell a white-label voice AI layer to their own clients; in-house operations teams modernizing customer contact workflows with AI as a force multiplier for human agents; and consent-sensitive industries (clinics, real estate, automotive service, logistics, professional services) that have to meet KVKK retention rules.

The voice and assistant layer:

  • A no-code assistant builder covering name, avatar, system prompt, first-message behavior, voicemail handling, silence timeout, and end-call detection, with live test calls through VAPI from the same screen
  • Pluggable LLM and voice routing across OpenAI, Anthropic Claude, Google Gemini, and Groq for the brain; ElevenLabs, Play.ht, Azure, Cartesia, Deepgram, and Vapi-native voices for TTS; Deepgram, AssemblyAI, Azure, Google, and 11labs for transcription
  • Knowledge base support with PDF, DOCX, and TXT document ingestion attached to assistants
  • Tenant-owned phone numbers with SIP trunk configuration (gateway, port, protocol, auth), inbound assistant or squad routing, and outbound dialing through the campaign engine

Outreach and customer lifecycle:

  • Campaign wizard with day and time-window scheduling, retry strategy and interval, squad mode, and timezone-aware dialing
  • Lead records that store contact details with KVKK-grade encryption and carry a versioned acknowledgment trail (text version, timestamp, IP, user-agent), so campaign execution can be gated on consent at the application layer
  • CSV import and manual lead entry into the customer app
  • Mid-call appointment reservations triggered by VAPI tool calls, with notes, source tracking, and notification fan-out

Multi-tenant and white-label:

  • Per-tenant subdomains, custom domains provisioned through the Cloudflare DNS API, isolated VAPI credentials, and full brand customization (logo, colors, default timezone and language)
  • Admin, super-admin, and user roles with per-user visibility filters and an audit log that records create, update, delete, and login events with IP and user-agent for forensic review
  • Iframe-safe JavaScript widget for voice and chat with configurable position, colors, pre-chat form, allowed-origin whitelist, per-widget rate limiting, and visitor metadata capture
  • Tenant-level email templates with version history, event triggers, and SMTP delivery through a hardened provider abstraction

Compliance and security:

  • KVKK data protection through AES-256-GCM encryption on lead phone numbers, HMAC-SHA256 phone hashing for lookup, transcript sanitization on the webhook ingestion path, and a configurable PII retention window
  • Lead-level consent capture with versioned acknowledgment text and signed metadata, wired so the data model is ready for IYS consent-state enforcement
  • NextAuth v5 with JWT sessions, Credentials and Google OAuth providers, bcrypt password hashing, and Redis-backed rate limiting on auth and provider-credential endpoints
  • AES-256-GCM for tenant VAPI credentials and encrypted lead PII, with HMAC validation on incoming webhooks

Billing and analytics:

  • Tiered plans (Starter through Enterprise plus a Custom tier) with per-tier voice minute and chat message allocations, overage pricing, and add-on purchases, all recorded as ledger entries
  • Credits reserved when a call starts and settled by webhook on completion, with detailed cost breakdowns (transport, STT, LLM, TTS, VAPI markup) per call
  • Per-campaign and per-assistant call volume, duration, success rate, and cost trends, plus a searchable, filterable call log with transcripts and recording links

Stack and operations:

  • Turborepo with pnpm workspaces and shared packages covering database, auth, UI, types, internationalization, VAPI, email, Cloudflare integration, and a dedicated compliance primitives package for the KVKK layer
  • Prisma migrations with rollback companions for every schema change, including the dedicated KVKK phone-encryption layer
  • PM2-managed Node processes behind an Nginx reverse proxy in production, Cloudflare for DNS and edge protection, Docker Compose for local Postgres and Redis, and a shell-scripted remote deploy
  • next-intl powering Turkish and English UI with per-tenant default locale
  • A prompts library with vertical-specific demo assistants that prospects can spin up in minutes

The trade-off compared to building a voice AI stack from scratch is straightforward: the integrations, the encryption layer, the billing logic, and the multi-tenant boundaries are already wired up.

Tech Stack

Next.js 15React 19TypeScriptTurborepopnpm WorkspacesPrisma 6PostgreSQLNextAuth v5Upstash RedisVAPIOpenAIAnthropic ClaudeElevenLabsDeepgramTailwind CSSRadix UITanStack QueryZodCloudflare DNS APIPM2NginxDocker Compose