R
Replai
All posts

Multilingual

WhatsApp customer service in Arabic and French: handling Darija voice notes with AI

How to set up an AI WhatsApp assistant for Moroccan and MENA customers who mix Darija, French and Arabic and send voice notes, without logging wrong orders.

By Clement, founder of ReplaiPublished Updated 7 min read

Quick answer

Answer in the language of each message, not the conversation: Darija in Arabic script gets Darija back, a message that mixes in French gets French, and English only after the customer uses it. Transcription handles greetings, prices and common questions but slips on product names, sizes and fast numbers, so confirm every order detail in text before logging it.

  • Reply per message, not per conversation; customers move between Darija, French and Arabic.
  • Confirm quantity, size, colour, price and city in text before logging any order.
  • Transcription is weakest on invented product names, fast numbers and long noisy notes.
  • After one failed retry on unclear audio, hand the thread to a person instead of guessing.

A WhatsApp inbox in Casablanca looks nothing like the demo a chatbot vendor shows you. A customer opens in Darija, quotes your price back in French, pastes a line of Modern Standard Arabic from your product page, and when the question gets complicated, presses the microphone and talks for forty seconds.

Tools built for English text fail here in one of two ways. They answer in English, which reads as a foreign call centre, or they answer in textbook Arabic that nobody in Morocco writes on WhatsApp. This guide covers the practical set-up: what transcription can honestly do with dialect, which language to reply in, what the knowledge base needs, and when to hand over to a person. Morocco is the running example; swap the dialect and the same rules hold from Algiers to Amman.

The MENA reality: three languages, one message

Darija is what customers speak, and on WhatsApp it's written two ways: in Arabic script, or in Latin letters with numerals standing in for Arabic sounds, so "how much" becomes ch7al and "one" becomes wa7ed. There's no standard spelling. The same word arrives five ways.

French is the language of prices, invoices, sizes and product names, and of most Moroccan brands' Instagram pages. A customer who switches to French mid-sentence isn't being formal; French is simply where the numbers live.

Modern Standard Arabic is what's on official documents, in school and on the news. It's what many bots default to, and it's almost never how customers chat. A reply in MSA reads like a letter from a ministry.

And then voice notes. Typing Darija is slow, there's no agreed spelling, and a voice note takes ten seconds. Older customers, drivers, and anyone holding a child prefer them. Nothing in a voice note is text you can search or copy into an order.

Algeria and Tunisia have the same Darija-and-French mix. Egypt runs on Masri with English loanwords, the Gulf on Gulf Arabic and English, with Urdu and Tagalog from the workforce. The dialect changes; the set-up doesn't.

How well does AI transcribe Darija voice notes?

The volume behind this is not small: WhatsApp users send about 7 billion voice messages a day on average (WhatsApp, 2022), and in this market the microphone often replaces typing altogether. So the question is never whether to handle audio, but what to do with a transcript you cannot fully trust.

Be honest with yourself here, because a bot that mishears a size and logs the order anyway is worse than no bot.

Transcription handles the common parts of a Darija voice note well: greetings, "how much", "do you deliver to", "is it available", "when will it arrive", and numbers said clearly in French. It's weaker on product names (especially names you invented), sizes and quantities said fast, numbers said in Darija, street noise, and long notes that switch language three times.

The consequence is a rule, not a feature: anything that ends up on an invoice gets confirmed back in text before it's logged. Quantity, size, colour, price, delivery city. The bot repeats them in one message, the customer replies wakha or oui, and only then does the order go to the sheet. The confirmation costs one message. A wrong size on cash on delivery costs a parcel travelling to Agadir and back, unpaid.

The journey of a forty-second Darija voice note. Greetings, the price question and the delivery question survive transcription, while the product name and the size said quickly do not. The order is read back in text for confirmation before it is logged, and a second unclear note is handed to a person.
Transcription is dependable in places and unreliable exactly where the order lives.

Reply-language rules

The customer sentThe bot replies in
Darija in Arabic scriptDarija in Arabic script
Darija in Latin letters (ch7al, wa7ed)French, or Latin-script Darija if you've chosen it
FrenchFrench
A Darija voice note with French mixed inFrench, in text
Modern Standard ArabicFollow the customer, but French or Darija is warmer
EnglishEnglish

Three rules sit behind the table.

Answer in the language the customer used, per message. Not per conversation. Someone who opens in French and switches to Darija when they get comfortable should get Darija back.

If they mix French into a Darija voice note, reply in French. Written Darija has no standard spelling, so a French reply is unambiguous about prices and product names, and anyone who mixes French into their speech reads it comfortably. It also gives the customer a clean text they can forward to whoever pays.

Never switch to English unprompted. Even if your knowledge base is in English. English is a signal that the shop is somewhere else. Use it only after the customer does.

One more: the bot answers in text, not voice. That's an advantage. The customer gets something to screenshot, and the price is on the record.

What should the knowledge base contain for a Moroccan store?

  • Product names in both scripts, plus the spellings customers use. "قفطان / caftan / kaftan / 9aftan" on one line. Detection and transcription both do better when the name exists in the form the customer will say it.
  • Prices in MAD, written the way customers say them: "450 DH". Say what's included, and whether delivery is extra.
  • Delivery cities with a fee and a time for each. Casablanca, Rabat, Marrakech, Agadir, Tanger, Fès, Oujda, and the ones you don't cover. "Everywhere in Morocco" is not an answer the bot can use.
  • Cash-on-delivery rules. Whether the customer can open the parcel before paying, the fee, what happens on refusal, and whether you call to confirm first.
  • Sizes in centimetres, with the French and European size names alongside.
  • Hours, including the Friday break and Ramadan hours if you change them.

You don't need to write the whole knowledge base twice. Write it in French or in Arabic, whichever you'd write naturally; a good bot answers in Darija from a French source. The product names are the exception, because they're what gets misheard.

A short example exchange

A voice note, transcribed:

Salam, chft l-caftan l-khdar f l'Instagram dyalkom. Bghit wa7ed taille M. Ch7al taman, w wach kaddiro la livraison l Agadir? Merci.

The reply, in French because the customer mixed French in:

Salam, merci pour votre message. Le caftan vert est à 450 DH, taille M disponible. Livraison à Agadir : 35 DH, paiement à la livraison, sous 2 à 3 jours.

Je récapitule : 1 caftan vert, taille M, livraison Agadir, total 485 DH. C'est bien ça ?

The customer answers wakha, safi. The bot asks for a full name and the number the courier should call, one question at a time, and logs the order. Notice what happened: the price came back in text, the size the customer said was repeated before anything was recorded, and there was one question at the end, not three.

If the same customer had sent the message in Arabic script with no French, the reply would come back in Darija in Arabic script, with the same structure and the same confirmation line.

Escalation for unclear audio

When a voice note is noisy, very short, or the transcription can't decide what language it heard, the bot should ask once, in text: "Désolé, l'audio n'est pas très clair. Pouvez-vous écrire le nom du produit et votre ville ?" Most customers type the two words.

If the second message is another unclear voice note, the bot stops and flags the thread for a human. It shouldn't guess, and it shouldn't ask a third time. You'll understand Darija through street noise better than any model, and listening to a 40-second note takes 40 seconds.

The same hand-over applies to complaints, a refusal at the door, anything about returns, and anyone who asks for a person. Set office hours with an away message in French and Arabic so the customer knows when the person is coming.

Where Replai fits

Replai pairs to the number already on your Instagram bio, as a linked device, with no Meta Business API application and no new SIM. It transcribes voice notes, detects the language of each message rather than the whole conversation, and answers from your knowledge base in the language the customer used. It won't invent a price: if the answer isn't in the knowledge base, it says it will check with the team and flags the thread for you. A customer who sends a screenshot of your Instagram post instead of typing the product name is handled too; the image is read like any other message. Once an order is confirmed, it asks for the name and number naturally and logs the order to Google Sheets.

Understanding voice notes and images is included on every plan, Starter upwards; replying with a spoken voice note is a Pro feature. Dialect transcription isn't perfect, which is why the confirm-in-text step exists. And Replai runs on an unofficial WhatsApp library, so ban risk exists as it does for every tool in this category; if you need the green verified badge or Meta-approved templates, the official API is the better fit.

The fastest way to judge it is to send it your own Darija voice note. The 7-day free trial needs no card and takes a few minutes to pair.

Frequently asked questions

Why do so many customers send voice notes?

Typing Darija is slow. There is no agreed spelling, so the same word arrives five ways, while a voice note takes ten seconds. Older customers, drivers and anyone holding a child prefer them. Nothing in a voice note is searchable text, which is why the bot transcribes it and reads the order back before logging anything.

Which language should the bot reply in?

The one the customer used in that message. Darija in Arabic script gets Darija in Arabic script, French gets French, and a Darija voice note with French mixed in gets French in text, because written Darija has no standard spelling and French is unambiguous about prices. Never switch to English before the customer does.

Should the bot reply with voice notes?

No. Answer in text even when the customer sends audio. The customer gets something to screenshot and forward, the price stays on the record, and the confirmation line can be read back word for word before an order is logged. Text also keeps the thread searchable when a person takes it over.

When should a conversation go to a human?

After one failed retry on unclear audio, and immediately for complaints, returns, a refusal at the door, or anyone who asks for a person. Asking a third time reads as a broken bot. A person understands dialect through street noise better than any model, and listening to the note takes seconds.

Sources

  1. Making voice messages better, WhatsApp, 2022-03-30
  2. About WhatsApp, WhatsApp, 2026-09-07

Keep reading

See it answer your own customers.

Pair your number, paste in what you know, and message it from another phone. Ten minutes, no card.

Start free trial