Naar inhoud
DienstenProjectenInvesteringAanpakOver LynuxisBlog Plan gesprek
Case · B2B-klant · Outbound call-center

Vijftig gesprekken tegelijk, één voicebot

Een Servisch B2B-call-center belde dagelijks honderden bedrijven voor lead-kwalificatie, afspraak-bevestiging en klant-follow-up. Twaalf medewerkers, een capped-out belplan, en een conversie die afhing van wie er die dag aan tafel zat. Wij bouwden één Node-engine die hetzelfde werk doet met een AI-stem op Retell AI — 50 calls tegelijk, transcriptie en uitkomst van elke call, en compliance ingebakken (opt-out, DNC-lijst, EU-data residency).

TypeKlant-build · B2B-call-center
Doorlooptijd6 weken MVP
TeamLudi (solo)
StatusPilot · 3 campagnes live
50
Gelijktijdige calls / kanaal
100%
Transcriptie + uitkomst per call
1
Node-process voor alles
EU
Audio + transcript on-shore

Het probleem

Twaalf belmedewerkers, één geleidelijke uitputting

De klant had een klein outbound-team dat per week ~3.000 bedrijven belde voor drie types gesprek: lead-kwalificatie, afspraak-bevestiging en customer-follow-up. Eén call duurde gemiddeld 2,5 minuut — vier uur netto bellen per medewerker per dag was de bovengrens.

Toen volumes verdrievoudigden door een retail-account dat ze wonnen, was de keuze: tien medewerkers extra opbouwen (€40k+ per stuk vol-on), of de gesprekken zelf grotendeels automatiseren.

Reguliere voicebot-platforms (zoals Voiceflow + Twilio) waren prima voor één type call, maar werden onhandelbaar bij drie campagne-types tegelijk met aparte scripts, retry-regels en compliance-vereisten.

Onze aanpak

Eén engine, drie campagne-types als data

De stack staat in één Node 22 + TypeScript proces met Fastify en SQLite. Geen aparte worker-systemen, geen serverless: één container op een goedkope VPS draait API, dispatcher, dashboard en webhooks tegelijk.

Een campagne is geen code — het is een rij in de database met: doel-lijst (uit Excel), script-template, retry-policy en outcome-mapping. Nieuwe campagne-type bijbouwen kost een uurtje, geen sprint.

Voor de stem zelf gebruiken we Retell AI als primair platform (real-time STT + LLM + TTS in één pipeline). De Twilio-ConversationRelay-fallback staat klaar voor het geval we volledig zelf willen hosten — maar Retell wint op latency en taalondersteuning.

SIP-verbinding loopt via een Servische +381 caller-ID. Audio en transcript blijven binnen EU. Iedere call eindigt met een gestructureerde outcome (kwalificatie-score, afspraak-tijd, opt-out) die direct terug-schrijft naar het CRM.

Live · dispatcher

50 lijnen tegelijk, elk in z'n eigen stadium

Het dispatcher-dashboard laat zien hoeveel calls op dit moment lopen, welke rinkelen, welke klaar zijn — en hoe de compliance-status per nummer staat.

voicebot.app/ops · 23 juni · 11:42 CET · 50 / 50 kanalen

Campagne · Lead-kwalificatie HVAC-B2B

Live 38Rinkelen 7Klaar 5Queue 118
#1847Klima Sistem d.o.o.+381 11 …02:14
#1848Pneumatic Belgrade+381 11 …01:38
#1849Hladnoća DOO+381 11 …00:47
#1850Termal Group+381 21 …03:01
#1851Klima Centar+381 11 …ring
#1852Vazduh d.o.o.+381 21 …00:33
#1842Energo Klima1 afspraak04:12
#1853Topao Dom+381 11 …02:58
#1854Klimatech NS+381 21 …00:19
#1855HotCool DOO+381 11 …ring
#1856Termodom+381 18 …01:54
#1843Komfor d.o.o.terug-bellen02:11
#1857Frigo Plus+381 21 …02:42
#1844Ventil-Progeen interesse00:48
#1858Klima Express+381 11 …01:09
Transcript · call #1847

Elke seconde meegelezen — incl. taal-tag

Hieronder vertaalde transcriptie van een Servische call. Originele audio + Servische transcript blijven in de database; vertaling alleen voor het dashboard.

call #1847 · 02:14 · Klima Sistem d.o.o.

Klima Sistem d.o.o. · contact: receptie

Servisch · Retell pipeline · 0,42s gem.
Bot
Goedendag, dit is Milena namens TermoPro. Ik bel u kort over uw HVAC-onderhoud voor commercieel vastgoed. Heeft u 30 seconden?
SR: "Dobar dan, ovde Milena ispred TermoPro…"
Klant
Ja, maar kort graag.
Bot
Natuurlijk. Heeft uw kantoorgebouw centrale klimaatregeling, en zo ja: hoeveel zones zijn er?
Klant
Drie zones, ongeveer 1.200 m².
Bot
Dank u. Mag onze techneut van TermoPro deze of volgende week langskomen voor een vrijblijvende inspectie? Het duurt 20 minuten.
Klant
Eh, ja, volgende week dinsdag tussen 10 en 12 zou kunnen.
Bot
Genoteerd: dinsdag 2 juli, 10:00–12:00. Ik stuur u een bevestiging per mail — mag ik uw mailadres?
Outcome — afspraak ingepland 02 juli 10:00 · receptionist@klimasistem.rs · score 8,4 · CRM-update queued
Compliance · per nummer

DNC-lijst, opt-out, EU-data — automatisch

Geen call wordt geplaatst zonder een check tegen de Servische DNC-register en de opt-out-lijst van de klant. Audio en transcripts blijven in een EU-datacenter.

voicebot.app/compliance · pre-call checks
DNC-register checkServië · Telekom Regulatorgeverifieerd
Eigen opt-out-lijstPer-tenant · sync via webhookactief
Time-window09:00–18:00 CET wkdin window
Caller-ID display+381 11 … "TermoPro"verklaard
Recording disclosureEerste zin van bot-scriptverplicht
EU data residencyAudio + transcript in FRAon-shore
Retry-policyMax 3 pogingen / 7 dagencapped
Anti-spam dampeningMax 50 calls/nummer/jrbij 42/50
Tech stack

Onder de motorkap

  • RuntimeNode 22 + TypeScript (strict) + tsx
  • Voice-platformRetell AI (real-time STT + LLM + TTS)
  • SIP-trunkServische +381 caller-ID, EU peering
  • API + dispatcherFastify 5, één proces voor alles
  • Databasebetter-sqlite3 — campagnes, calls, outcomes
  • Import/exportExcel via xlsx → calls-tabel → CRM-update
  • ValidatieZod-schema's voor elke input/output
  • TestsVitest unit + full call-walks per outcome
  • FallbackTwilio ConversationRelay als self-host alternatief
Slimme details

Waar het anders is

  • Campagne = data, geen codeNieuwe call-type bouwen = nieuwe row in DB + script-template
  • Outcome-mappingIedere bot-flow eindigt met een gestructureerd resultaat (afspraak / opt-out / herbel / niet-geïnteresseerd)
  • 50 kanalen / één procesGeen workers, geen queue-services — pure Node async
  • Reversibele complianceOpt-out via DTMF "9", web-link of e-mail — direct in DNC
  • Audio + transcript blijven EUGeen US-cloud betrokken bij de gesprekken
  • Hot-reload campagnesScript aanpassen midden in een ren — volgende call pakt nieuwe versie

"Tijdens de pilot hebben we drie weken parallel gebeld — de helft door ons team, de helft door de voicebot. De bot haalde gemiddeld 8% meer afspraken. Maar het belangrijkste: ze werkt 's avonds, in het weekend en tijdens vakanties door. Dat heb je nooit met een menselijk team."

— Operations director, B2B call-center Belgrado

Outbound bellen op schaal in jouw branche?

Lead-kwalificatie, afspraak-bevestiging, klant-follow-up, NPS-survey. Vaste prijs vooraf, EU-data, compliance ingebakken.