.webp)
Booking an appointment isn’t just about picking a time slot — it’s about making sure the customer shows up. People don’t just schedule; they ask about locations, pricing, discounts, business hours, and whether the visit is worth their time.
Voor bedrijven met meerdere ketens kan het overweldigend zijn om deze vragen op meerdere locaties te behandelen. Oproepen en e-mails stapelen zich op, klanten haken af en verloren afspraken betekenen verloren inkomsten.
De oplossing? Bouw een AI-chatbot die niet alleen het plannen automatiseert, maar ook onmiddellijk accurate antwoorden geeft - rechtstreeks op WhatsApp.
In this guide, I’ll show you how to create a WhatsApp chatbot using Botpress and Calendly to streamline scheduling, handle customer questions, and ensure every appointment turns into real business.
Laten we eerst een stapje terug doen voordat we gaan bouwen.
Het doel van deze chatbot is eenvoudig: klanten helpen met vertrouwen afspraken te maken - en de heen-en-weergeloop waar je team elke dag mee te maken heeft te verminderen. Maar bij het maken van afspraken gaat het niet alleen om het kiezen van een tijdstip. Klanten willen dingen weten als:
- Welke locatie is het dichtstbij?
- Lopen er kortingen?
- Hoe laat gaat de sportschool in het weekend open?
- Kan ik mijn afspraak verzetten als er iets tussenkomt?
Een goede boekingsbot regelt niet alleen de planning, maar beantwoordt ook deze vragen. En als je dat allemaal levert in één enkel WhatsApp , boeken meer mensen.

Om je chatbot te bouwen, heb je het volgende nodig:
- Calendly (Standaard Plan) - Vereist voor API-toegang. Je kunt beginnen met de gratis proefversie van 14 dagen.
- Meta Business-account - Gratis en vereist voor WhatsApp .
- Botpress Account - Gratis aan te maken en gebruikt voor het bouwen en beheren van de chatbotlogica.
Je kunt deze vooraf instellen of stap voor stap de handleiding volgen.
Step 1: Define Bot Purpose
Before opening any tool, take a minute to sketch out what your bot needs to do — this saves time later when you're connecting Calendly, uploading info, or wiring workflows.
Vraag jezelf af:
- Who is your audience? First-time gym visitors? Members looking to reschedule?
- What should the bot help with? Booking appointments, answering FAQs, sharing locations?
- What kind of inputs should it handle? Quick replies like “Book a class” — or natural language like “I want to visit the downtown location this weekend”?
- Should it offer handoff? If someone’s confused, will the bot bring in a human or try to guide them back?
Sketching this out now helps you design cleaner flows — and avoid rebuilds when you start layering in knowledge bases or logic triggers.
Pro tip: Start small. A single-location booking bot that answers 5–10 key questions is way more valuable (and launchable) than an over-engineered bot that tries to do everything.
Stap 2: Kennisbank toevoegen
Een kennisbank is een verzameling informatie die je chatbot kan gebruiken om vragen te beantwoorden - zoals een naslagbibliotheek voor je bedrijf.
In plaats van elk antwoord hard te coderen, kun je documenten of tabellen uploaden die de bot kan doorzoeken wanneer gebruikers vragen stellen over bijvoorbeeld prijzen, diensten of openingstijden.
Je kunt het zien als de inhoud die het brein van je chatbot voedt.
Statische bedrijfsinformatie uploaden
Begin met het uploaden van een eenvoudig, gestructureerd document met de meest voorkomende vragen die klanten stellen. Dit kan een PDF, Word-doc of spreadsheet zijn - zorg ervoor dat het overzichtelijk is.
Je document moet het volgende bevatten:
- Vestigingen en adressen
- Beschikbare diensten op elke locatie
- Prijzen, kortingen en lidmaatschapsopties
- Openingstijden en contactgegevens
Elk onderwerp moet een duidelijke sectie hebben, zodat de chatbot gemakkelijk relevante antwoorden kan vinden en terugsturen.
Tip: Gebruik kopteksten en opsommingstekens in je document om het scanbaar te houden voor zowel de bot als je team.
You can upload this document by heading to the Knowledge Base section:
- From your project, open the left-hand menu.
- Klik op Kennisbank.
- Selecteer Document uploaden en voeg je bestand toe.
Geef het document een duidelijke naam (bijv. Filiaalgegevens - maart 2025) zodat je er later in workflows of query's naar kunt verwijzen.
Eenmaal geüpload kan de chatbot het document direct gebruiken om vragen van gebruikers te beantwoorden - er is geen extra training of codering nodig.
.webp)
Using tables for dynamic information
Voor dingen zoals opkomende evenementen, seizoensaanbiedingen of roterende schema's kun je beter een tabel gebruiken in plaats van een statisch document te uploaden. Met tabellen kun je slechts één rij bijwerken zonder de rest van je gegevens aan te raken, waardoor ze sneller te onderhouden zijn.
Here’s how to create a table in your knowledge base:
- Ga naar de Knowledge Base in het menu aan de linkerkant.
- Klik op Create New (Nieuw maken) en selecteer Table (Tabel).
- Geef je tafel een naam (bijv. Evenementenschema).
- Voeg kolommen toe voor het soort informatie dat je de chatbot wilt laten ophalen, zoals:
- gebeurtenis_naam
- datum
- locatie
- prijs
- beschrijving
- Begin rijen toe te voegen voor elke gebeurtenis of elk item waarnaar de bot moet verwijzen.
Zodra je tabel is opgeslagen, kun je hem gebruiken om dynamische antwoorden te geven. Als een gebruiker bijvoorbeeld vraagt: "Welke evenementen zijn er komend weekend?", kan de bot de relevante rij ophalen en direct een antwoord geven.
.webp)
Optimizing costs with cached FAQs
One of the biggest challenges with AI-powered bots is cost — especially if the bot hits the LLM every time someone asks a common question.
The knowledge base helps reduce this by automatically caching answers to frequently asked questions. That means if five people ask, “What’s the gym’s weekend schedule?”, the platform only queries your knowledge base or LLM once — then reuses that answer instantly the next time.
You don’t need to configure anything. Caching kicks in automatically if:
- The answer comes from structured content (a document, table, or FAQ)
- The bot is connected to an LLM or RAG pipeline
- The user stays in the same topic thread
This keeps your bot fast — and cuts down on token usage without compromising the experience.
Stap 3: Calendly toevoegen
Om je chatbot afspraken te laten plannen, moet je Calendly verbinden met Botpress. Hierdoor heeft de bot toegang tot beschikbare tijdslots en kan hij boekingslinks genereren voor gebruikers.
Installeer de Calendly
Start from your project dashboard:
- Go to the Hub from the left-hand menu.
- Zoeken naar Calendly en klik op Installeren.
- Once installed, open the Calendly Integration settings from your project.
Genereer en voeg je Calendly API sleutel toe
Next, you’ll need to generate a personal API key from Calendly and add it to the workflow:
- Log in op je Calendly account.
- Klik op Integrations & Apps in het menu aan de linkerkant.
- Scroll naar beneden naar API & Webhooks en klik op Nu een token krijgen.
- Name the token (e.g., Access) and complete two-factor authentication if prompted.
- Kopieer de API-sleutel - je kunt deze later niet meer bekijken.
- Ga terug naar Botpress en plak de sleutel in de Calendly .
- Klik op Opslaan om de verbinding te voltooien.
Eenmaal verbonden kan je chatbot beschikbaarheidsgegevens ophalen en planningslinks genereren op basis van de locatie of voorkeuren van de gebruiker.
Stap 4: Bouw Chatbot-workflow
Nu Calendly is aangesloten, is het tijd om de chatbot logica te bouwen - of wat Botpress een workflow noemt. Hier bepaal je hoe de conversatie zal verlopen: wat de bot moet zeggen, welke info hij moet verzamelen en hoe hij moet reageren op basis van de keuzes van de gebruiker.
Zie het als het opstellen van een stroomschema voor een balieassistent. Als iemand binnenkomt en zegt: "Ik wil een proefsessie boeken in de sportschool in het centrum", dan zou de assistent dat doen:
- Vraag welke locatie
- Het juiste schema ophalen
- Link naar boek delen
- Bevestig de afspraak
- Eventuele vervolgvragen beantwoorden
Your chatbot needs to do exactly that — but on the platform of your choice.
1. De filiaalselectie van de gebruiker vastleggen
Omdat je bedrijf waarschijnlijk meerdere locaties heeft, moet de bot weten welke vestiging de gebruiker wil voordat hij de beschikbaarheid toont.
- Voeg een enkelvoudig keuzeknooppunt toe om de gebruiker te vragen een locatie te kiezen.
- Maak een variabele (bijvoorbeeld workflow.branch) om hun selectie op te slaan.
- Je zult dit later gebruiken om de juiste Calendly te sturen op basis van de gekozen branche.
Dit zorgt ervoor dat alle planningskoppelingen en antwoorden op maat worden gemaakt voor de juiste vestiging.
.webp)
2. De Calendly gebruiken
The Hub also provides a prebuilt workflow that connects directly to your Calendly setup.
- Zoek in de sectie Workflows naar Calendly Event Workflow.
- Klik op Klonen om je bewerkbare versie te maken.
- Pas de flow aan als dat nodig is - deze is al ingesteld om een boekingslink te genereren die is gekoppeld aan de sessie van de gebruiker met behulp van de conversatieId.
Door de conversatie-ID door te geven, genereert de chatbot een unieke boekingslink die kan worden getraceerd naar individuele gebruikers. Deze kant-en-klare workflow bespaart tijd en zorgt ervoor dat je planningslogica al correct is aangesloten.
.webp)
3. De Calendly Event Trigger instellen
Zodra een boekingslink is verzonden, wil je dat de chatbot detecteert wanneer de gebruiker zijn afspraak heeft ingepland.
- Klik met de rechtermuisknop in de workflow en voeg een Calendly Event Trigger knooppunt toe.
- In the settings, pass the conversation ID using:
{{event.payload.conversation.id}} - Hierdoor kan de chatbot luisteren naar de specifieke boeking van de gebruiker.
- Wanneer deze wordt geactiveerd, kan de bot automatisch een bevestigingsbericht sturen.
Hierdoor voelt de bot slim en responsief aan en weten gebruikers dat hun afspraak is geboekt.

4. Zakelijke informatie en veelgestelde vragen verwerken
Niet iedereen zal meteen boeken. Sommige gebruikers zullen eerst vragen stellen over prijzen, uren of diensten. Je kunt dit aanpakken door je kennisbank aan te sluiten.
- Voeg een autonoom knooppunt toe dat is gekoppeld aan de kennisbank.
- Schakel kennis zoeken in zodat de bot antwoorden kan halen uit geüploade documenten of tabellen.
- Gebruik dit knooppunt als terugval wanneer gebruikers algemene vragen stellen.
Op deze manier blijft je bot behulpzaam - zelfs voor gebruikers die nog niet klaar zijn om te boeken.
.webp)
Step 5: Deploying Chatbot
With the chatbot fully built, the final step is to deploy it on you channel of your choice. For this example we will be choosing WhatsApp so users can interact with it directly. This allows seamless appointment scheduling and instant responses to common inquiries — all within a familiar messaging app.
Zo verbind je je chatbot met WhatsApp:
- Go to Home from the left-hand menu.
- Klik op WhatsApp machtigen en koppel WhatsApp aan je Meta Business-account.
- Volg de stappen op het scherm om de installatie te voltooien.
Eenmaal verbonden is je chatbot live op WhatsApp - klaar om echte gesprekken met je klanten te voeren.
Klaar om uw eerste afsprakenbot te lanceren?
Met slechts een paar tools - Botpress, Calendly en WhatsApp - heb je een systeem gebouwd dat het boeken automatiseert, vragen beantwoordt en de werkdruk van je team verlaagt.
Van hieruit kun je je bot verder uitbreiden om evenementen, promoties en follow-upberichten te ondersteunen - of hem inzetten op meer kanalen zoals Slack, Telegram en Teams.
Begin vandaag nog met bouwen - het is gratis en je weet al hoe.