WhatsApp AI Agent & Admin Dashboard
WhatsApp AI Agent & Lead Management
- TypeScript
- Node.js
- Fastify
- Next.js
- React
- Tailwind CSS
- Supabase
- PostgreSQL
- OpenAI API
- WhatsApp Cloud API
- Docker

Project gallery
Inside the project
Project documentation
Project Overview
BSSA AI Agent is a WhatsApp customer engagement and lead management system developed for an external education and training client. It combines automated assistance with a staff dashboard for monitoring conversations, managing lead information, and handling cases that need human attention.
Its architecture separates a Fastify agent service, a Next.js dashboard, and shared TypeScript domain modules.
My Role & Contributions
Role: Fullstack Developer — End-to-End Development.
I independently designed and developed the application from the ground up as part of my professional work at PT. Qinar Raya Mandiri. My responsibilities covered the frontend design and implementation, backend services, messaging and AI integrations, and deployment to a VPS.
Key Features
- Meta WhatsApp Cloud API webhooks, message sending, and delivery status handling.
- Keyword-based knowledge retrieval using relevant knowledge-base entries and program information.
- OpenAI responses with structured output, validation, policy checks, and safe fallback messages.
- Indonesian and English conversation flows.
- Lead profile extraction, deterministic scoring, and qualification state tracking.
- Staff escalation, manual replies, AI pause controls, and resumption after resolution.
- Scheduled follow-ups, template management, and opt-out handling.
- Campaign configuration, realtime conversation updates, reports, and model usage monitoring.
- Role and permission management for dashboard users.
Conversation Workflow
- A WhatsApp message reaches the webhook, is checked, and is stored against a lead and active conversation.
- The agent prepares context from relevant knowledge entries, program data, and conversation history.
- OpenAI returns a structured response, which is validated before the outgoing message is sent.
- The system updates lead information and evaluates the appropriate follow-up or escalation.
- Staff can handle escalated conversations from the dashboard and resume automated assistance when the case is resolved.
Tech Stack
Agent: Node.js, TypeScript, Fastify, OpenAI SDK, Croner.
Dashboard: Next.js, React, Tailwind CSS, shadcn/ui, MUI charts.
Data: Supabase PostgreSQL, Auth, Realtime.
Messaging: Meta WhatsApp Cloud API.
Development: pnpm monorepo, Zod, Vitest, Docker.
Professional client project. Source code, customer information, and internal access details are confidential.