Case study · Dental clinic · Casablanca
How a dental clinic in Casablanca reduced its WhatsApp load without replacing its team
More than 100 WhatsApp conversations arrived every day. Some ran to around twenty messages each, roughly 2,000 messages to read and process daily. The goal was never to replace the front-desk team — it was to free their attention for the patients and situations that genuinely needed a person.
Clinics and practices in Morocco trust us






Forteuno Web started with the clinic's procedures, then built a team of AI agents around those rules. After deployment, conversations needing human intervention dropped from over 100 to fewer than nine per day. The measurement period stays confidential. The 24-hour WhatsApp suspensions seen before stopped recurring after the migration to the official API.
100+
conversations received per day before the project
~2,000
messages to process on comparable days
< 9
conversations per day handed to the team after deployment
< 30s
per a five-star client review
The clinic remains anonymous to protect its confidentiality. Interface screenshots use exclusively fictional demonstration data. These results describe this project and are not a guarantee for any other practice.
The problem wasn’t simply “too many messages”
The clinic used WhatsApp for appointment requests and everyday communication. That choice reduced incoming calls and kept the phone line free for more urgent cases. But the channel had grown to a scale the organization could no longer absorb manually.
A single conversation could take many back-and-forth messages: understanding the request, answering approved questions, collecting information, checking the preferred language, offering an appointment slot, or handing the request off. At more than 100 conversations a day, the team risked spending its day repeating answers while some patients needed fast human follow-up.
A second problem compounded the workload. The WhatsApp Business account occasionally faced 24-hour suspensions amid a high volume of inbound and outbound messages. Dentipro was meanwhile still sending appointment and birthday reminders. A WhatsApp outage therefore cut off a central channel of the patient relationship.
We didn’t start with a chatbot
The first conversation was with the operations manager. Before configuring any agent, we asked for the clinic's SOPs: how to qualify a request, what information to give out, how to present approved treatments, which situations count as urgent, when to hand a conversation to a person, and which data must stay out of the system's reach.
This step is the foundation of the project. A generic agent can produce fluent replies without respecting how a clinic actually operates. Our job is the opposite: adapting the technology to the existing process. If a practice has no workable procedures and isn't willing to invest the time to define them, we'd rather not deploy an agent presented as reliable.
The length of the analysis and build phase depends on the size of the organization and the complexity of its processes. Testing continues until the client is satisfied the system respects the agreed scenarios. We don’t publish a generic "live in 48 hours" promise.
What the agent could do
- book an appointment
- share approved pricing
- explain treatments using clinic-approved wording
- give location and access information
- answer questions already covered by its knowledge base
- qualify a request before booking or handover
Before a handover, it collected the patient's name, date of birth, a callback number different from the WhatsApp number if needed, and the reason for the visit. That reason was reframed using the qualification questions defined in the SOPs. Thanks to conversation history and context, the agent avoided re-asking for information it already had.
What the agent was never allowed to do
The boundaries mattered as much as the capabilities. The agent had no access to medical records, insurance documents, or other private information reserved for the team. Any request of that kind was handed to a person.
It did not diagnose and did not guarantee a treatment. It could explain general possibilities approved by the clinic, then recommend a consultation. Urgent situations followed the clinic's set procedure and were escalated. Clinical staff kept full clinical responsibility and access to sensitive information.
Language handling based on the conversation itself
In Morocco, language can't be decided correctly with a simple rule. A phone country code can act as a first signal, but a +212 number doesn't automatically mean the person wants to speak Arabic or Darija. The system mainly watches the language actually used in the conversation and applies the standards approved by the clinic.
Migrating to the official WhatsApp API with coexistence
The clinic moved from an app-centered WhatsApp Business setup to the official WhatsApp Cloud API with coexistence. The team could keep using the app normally while the automations and dashboard ran on the official infrastructure.
We didn't change how Dentipro sent its reminders. We didn't add message queues, custom rate limits, or systematic human approval before every message as part of this project. After the migration, the 24-hour suspensions seen previously stopped recurring.
This result describes this specific implementation. It doesn't mean a migration alone guarantees freedom from restrictions for every account: platform rules, message quality, consent, and sending practices all remain decisive.
Understand the migration to the official WhatsApp API →A workspace for the team, not just an AI
The clinic had a shared dashboard. Conversations moved through a pipeline that included: new conversation, handled by AI, qualification, appointment booked, awaiting patient, human assistance needed, urgent, and closed.

A more condensed Kanban view grouped requests escalated to the team, patients waiting, conversations due for follow-up, and those handled by the AI agent. The team could see the reason for escalation, the information already collected, and the conversation's status instead of hunting for context through a long message list.


What people are saying:
Audio review
Client testimonial
Voice message
Shared on WhatsApp
Voice message
Client, October 2026
Audio review
Client testimonial
What other clinics can take from this
- The agent is only as good as the procedures behind it. A knowledge base doesn't replace operating rules.
- Confidentiality is also protected by what the system can't reach. Medical or insurance documents stay reserved for authorized people.
- The real product is a team system. Statuses, history, qualification, and human takeover turn automation into an operational tool.
- Language should follow the person, not their area code. A technical signal can help, but the actual conversation should guide the response.
- Some practices are bad candidates for automation. A clinic that refuses to formalize its procedures shouldn't get a generic agent presented as ready.
Yes, the method can be adapted for practices in Rabat, Marrakech, Tangier, Fez, Agadir, and the other cities we cover. But the case presented here took place in Casablanca. We don't swap out the city name to manufacture local proof.
Questions about this case study
No. It handles repetitive requests and approved scenarios, while the team keeps urgent, private, medical, or unusual cases. A staff member can take over a conversation immediately; the AI then pauses for 24 hours and can be reactivated by the team.
No. It can explain general information approved by the clinic and recommend a consultation. It does not diagnose, does not prescribe treatment, and does not guarantee any clinical outcome.
In this project, they stopped recurring after the migration to the official WhatsApp Cloud API with coexistence. Dentipro kept running as before. This result belongs to this specific setup and isn't a universal guarantee against platform restrictions.
The timeline depends on the size of the organization, the number of scenarios, the tools to integrate, and the quality of the SOPs. Testing continues until the client is satisfied the agreed scenarios are respected. There's no credible one-size-fits-all timeline for every clinic.
It can be configured for French, Arabic, and Darija according to the clinic's standards. The phone number can provide a first signal, but the language actually used in the conversation remains the best indicator. French serves as the fallback when the choice is unknown.
No. A reliable agent requires workable SOPs and validation time from the client. If a practice only wants a generic bot without defining its rules, Forteuno would rather turn down the project than promise a result it can't deliver.
Is your team answering the same questions all day on WhatsApp?
We can start by mapping the scenarios, the approved information, and the handover rules. If your procedures aren't formalized yet, we'll tell you what needs to be prepared before we build anything.
