Work  /  Voice & Phone  /  02

AI Voice Agent System for a Training Academy

Medical aesthetics training · London

Delivered — figures client-reported; no workflow export was supplied

5agents
2vendor platforms
12automations
A phone on a live call with a voice agent, a graduation cap on a stack of books, and the call’s outcome written to a CRM record.

The problem

An agent that improvises a price, or tells an unqualified caller they are eligible, creates a compliance problem — not just a bad call.

The academy sells five training programmes, including Ofqual-regulated qualifications with fixed fees and strict entry requirements. Inbound calls went unanswered outside office hours, thousands of CRM records were never called at all, and follow-up depended on someone remembering to send the details later.

How it runs

  1. Answer inbound

    01 / 05 inbound · the CRM’s own voice AI

    Inbound calls are answered by the CRM’s native voice AI, which has direct access to the contact records — it knows who is calling.

  2. Dial by course

    02 / 05 outbound · ElevenLabs · four agents

    Outbound calls run on ElevenLabs, with one agent for each of four courses: the agent dialling for one course has no representation of the others.

  3. Re-check eligibility

    03 / 05 in code, not in the prompt

    The orchestration layer re-checks the eligibility flag and overrides the agent unless it is explicitly true.

    not explicitly true → no advanced booking link

  4. Send details mid-call

    04 / 05 while the call is live

    Follow-up messages fire during the call, so the details arrive while the caller is still on the phone.

  5. Write it back

    05 / 05 post-call · the only thing that path does

    When the call ends, its outcome is written back to the CRM, with no human transcription.

The guards, and what each one prevents

HoverTap a card to read what it prevents.

  • Eligibility is decided in code

    A model slip cannot send an advanced booking link to a beginner. For a regulated qualification that is the difference between a bad call and a compliance incident.

  • One outbound agent per course

    A single agent would have to decide which course a call is about, inside a language model. Four agents make mislabelling a course structurally impossible rather than merely unlikely.

  • Details arrive during the call

    Sending them afterwards means a queue, and a queue means a caller who was promised something and never received it.

  • A live change must prove it changed nothing else

    Every change to a live agent is backed up, written dry by default, then re-fetched and compared field by field. It has caught two silent regressions a status-200 check would have passed — one nulled the text-to-speech model across all 33 language presets.

Limits, stated plainly

  • The figures are the client’s own. No workflow export was supplied, so nothing on this page was counted independently.
  • Two vendor platforms mean two sets of changes that can break a live system. Each was chosen on its merits, and the diff before every deployment exists because vendors do change things silently.
  • The eligibility rules are this academy’s entry requirements. Another academy’s rules are different rules, and re-scoping that check is real work, not configuration.

Built with

  • ElevenLabs
  • GoHighLevel
  • n8n
  • Twilio
  • WhatsApp