Context
An online mentoring & education company was running inbound through human SDRs handling first-touch on WhatsApp — the dominant channel for the audience. The problem: SDR capacity capped throughput, and a meaningful share of inbound landed off-hours or queued for next-day response. Lead quality was uneven enough that the team spent significant time on conversations that wouldn’t convert.
The brief: take inbound from first WhatsApp message all the way through program enrollment, with HubSpot remaining the system of record. Not a “qualifier” agent that hands off to a human to close — a full-loop close.
What I built
A WhatsApp AI SDR that handles the full inbound conversational close, with HubSpot remaining authoritative throughout.
- HubSpot via API as system of record. The AI agent pulls inbound lead context (campaign source, prior touchpoints, segment) on each conversation; writes back stage transitions, conversation summaries, and enrollment status to the lead record. No forked CRM, no “AI workspace” diverging from sales-team visibility.
- WhatsApp as primary channel (Z-API) — handles the full inbound conversation from first reply through subscription confirmation.
- OpenAI conversational layer with structured handoffs across qualification → objection handling → program fit → enrollment close. Each phase has a clear contract, not a single mega-prompt.
- Redis for short-term conversational state — session memory, rate limiting, burst debounce when a lead fires off four messages in a row.
- Supabase as the durable state layer — lead funnel position, message history, enrollment status. Independent of HubSpot for AI-internal state; HubSpot stays clean.
- n8n orchestration wiring HubSpot ↔ Z-API ↔ OpenAI ↔ Redis ↔ Supabase.
Outcome
- Inbound coverage decoupled from SDR headcount. AI handles qualified inbound 24/7 — no off-hours dead air.
- Full conversational close in WhatsApp — qualified leads don’t get bounced to a human SDR for the final close; the AI takes them through enrollment.
- HubSpot stayed the source of truth. Sales leadership keeps the same reporting surface; AI just made the records move faster.
- Human team refocused on high-intent conversations — the AI handles the long tail of inbound qualification and the bulk of program-fit conversation, freeing the team to close enterprise-tier deals where human-to-human is the right channel.
Why this engagement matters
Most AI SDR implementations are qualifier agents — they screen inbound and hand off to a human to close. That sounds like a smaller scope but it creates a worse experience: the lead invests in a conversation with the AI, then gets passed to a human who starts over.
This system closes the loop. The same agent that opens the conversation also confirms enrollment. The handoff is to the program (post-enrollment), not to another rep.
The architectural choice that makes it work: HubSpot remains source of truth. The AI doesn’t create a parallel universe of lead data — it operates on HubSpot’s record and writes back. Sales operations sees the same pipeline they always saw, just with AI agents pushing records through it instead of humans typing into the CRM all day.