Intégrer WhatsApp dans un CRM revient à ajouter un canal de communication bidirectionnel rattaché à chaque fiche contact. Ce tutoriel couvre les étapes techniques concrètes : authentification, envoi d'un message depuis une fiche contact, réception des réponses via webhook et mise à jour automatique de l'historique. L'exemple utilise l'API Whakup, Meta Tech Provider certifié.
Étape 1 : structure de données à prévoir dans le CRM
Avant de coder la moindre requête API, il faut adapter la structure du CRM pour accueillir WhatsApp. Trois champs sont essentiels :
| Champ | Où l'ajouter | Valeur exemple |
|---|---|---|
whatsapp_phone |
Fiche contact | +33612345678 |
whatsapp_opted_in |
Fiche contact | true / false |
whatsapp_phone_number_id |
Compte organisation | 1234567890 |
Le champ whatsapp_opted_in est critique : il doit être true avant tout envoi de message proactif. C'est à la fois une exigence Meta et une obligation RGPD. Ne déclenchez jamais d'envoi sans vérifier ce flag.
Le whatsapp_phone_number_id est l'identifiant du numéro WhatsApp Business de l'organisation. Dans une architecture multi-tenant, chaque organisation cliente du CRM a son propre identifiant.
Étape 2 : envoyer un message depuis une fiche contact
Le scénario le plus courant dans un CRM : un commercial clique sur "Envoyer un message WhatsApp" depuis la fiche contact. Le CRM appelle l'API Whakup avec le template approprié.
Requête POST vers l'API Whakup :
POST https://api.whakup.com/v1/messages
Authorization: Bearer <token_whakup>
Content-Type: application/json
{
"messaging_product": "whatsapp",
"to": "+33612345678",
"type": "template",
"template": {
"name": "relance_devis",
"language": { "code": "fr" },
"components": [
{
"type": "body",
"parameters": [
{ "type": "text", "text": "Thomas" },
{ "type": "text", "text": "Devis #2026-089" }
]
},
{
"type": "button",
"sub_type": "url",
"index": 0,
"parameters": [
{ "type": "text", "text": "devis-2026-089" }
]
}
]
}
}
Réponse en cas de succès :
{
"messages": [{ "id": "wamid.XXXXX" }]
}
Stockez le wamid retourné dans l'historique d'activité du contact : il vous permettra de faire le lien entre le message envoyé et les événements de statut reçus par webhook.
Pour la soumission et l'approbation des templates HSM, consultez le guide complet de l'API WhatsApp Business.
Étape 3 : recevoir et traiter les webhooks entrants
Deux types d'événements arrivent via webhook : les messages entrants (réponse du contact) et les statuts de livraison (envoyé, livré, lu, échec).
Configuration dans Whakup :
- URL webhook :
https://votre-crm.com/api/webhooks/whatsapp - Verify token : chaîne secrète pour valider la signature des payloads
- Événements :
messages,message_status
Traitement d'un message entrant (pseudo-code) :
function handleWhatsAppWebhook(payload):
for entry in payload.entry:
for change in entry.changes:
if change.value.messages:
message = change.value.messages[0]
phone = message.from // ex: "33612345678"
contact = CRM.findContactByPhone("+" + phone)
if contact:
CRM.addActivity(contact.id, {
type: "whatsapp_inbound",
content: message.text.body,
timestamp: message.timestamp,
wamid: message.id
})
CRM.notifyAssignedUser(contact.id)
else:
CRM.createIncomingLead(phone, message.text.body)
Traitement d'un statut de livraison :
function handleStatusUpdate(status):
activity = CRM.findActivityByWamid(status.id)
if activity:
CRM.updateActivityStatus(activity.id, status.status)
// status.status = "sent" | "delivered" | "read" | "failed"
L'API WhatsApp Whakup documente l'ensemble des codes de statut et les payloads webhook dans son portail développeur.
Étape 4 : automatiser les envois depuis les workflows CRM
L'intérêt principal de l'intégration CRM est de déclencher des messages WhatsApp automatiquement, sans intervention humaine. Voici trois automatisations types :
Automatisation 1 : message post-devis
- Déclencheur : statut du deal passe à "Devis envoyé"
- Délai : 0 minute (immédiat)
- Action : envoyer template
confirmation_devisavec numéro de devis et lien de consultation
Automatisation 2 : relance J+3
- Déclencheur : statut du deal reste "Devis envoyé" pendant 3 jours
- Condition :
whatsapp_opted_in = true - Action : envoyer template
relance_devisavec prénom du contact et référence du devis
Automatisation 3 : message de bienvenue client
- Déclencheur : statut du deal passe à "Gagné"
- Délai : 5 minutes
- Action : envoyer template
bienvenue_clientavec nom du commercial assigné et prochaines étapes
Pour chaque automatisation, vérifiez que le template utilisé est bien approuvé par Meta et correspond à la catégorie correcte (utility pour les transactionnels, marketing pour les commerciaux). Le détail des catégories est expliqué dans l'article templates WhatsApp catégories.
FAQ
Comment gérer le cas où le contact n'a pas WhatsApp sur son numéro ?
L'API retourne une erreur 131026 (numéro non enregistré sur WhatsApp). Votre CRM doit capturer cette erreur et mettre whatsapp_opted_in à false pour éviter de réessayer. Vous pouvez aussi déclencher un fallback automatique vers SMS ou email selon la logique de votre workflow.
Peut-on envoyer des fichiers PDF ou des images depuis la fiche contact ?
Oui, via les templates de type header avec composant media (image, document). Le fichier doit être hébergé sur une URL publique accessible par Meta, ou uploadé préalablement via l'API Media de Whakup. Le template doit inclure un composant header de type document ou image lors de sa soumission à Meta.
Comment identifier quel commercial a envoyé quel message ?
Stockez l'ID utilisateur CRM dans les métadonnées de chaque activité WhatsApp créée. Lors de l'envoi, votre code sait quel utilisateur a déclenché l'action (utilisateur connecté ou règle d'assignation du workflow). Le wamid retourné par l'API relie le message envoyé à cet utilisateur dans votre base.
L'intégration fonctionne-t-elle pour les CRM open source (SuiteCRM, Vtiger) ?
Oui. L'API Whakup est une API REST standard. Tout CRM capable de faire des appels HTTP sortants et d'exposer un endpoint webhook peut s'intégrer, qu'il soit SaaS ou open source. La complexité varie selon les capacités de plugin ou d'extension du CRM, pas selon l'API Whakup.
Besoin d'aide pour démarrer votre intégration WhatsApp dans votre CRM ? Whakup accompagne les éditeurs avec une documentation complète, un environnement de test et un support technique. Accédez à l'API WhatsApp Whakup.

Co-fondateur et Chief Product Officer de Whakup, Pablo conçoit les fonctionnalités qui permettent aux marques africaines de maximiser leur impact sur WhatsApp.
Prêt à passer à l'action ?
Essayez Whakup gratuitement pendant 15 jours. Aucune carte bancaire requise.
Démarrer l'essai gratuitArticles similaires
API WhatsApp pour les CRM : cas pratique 2026
Cas pratique d'intégration de l'API WhatsApp Business dans un CRM : scénarios sales, support et fidélisation avec résultats concrets pour éditeurs SaaS.
API WhatsApp pour les CRM : FAQ 2026
Toutes les réponses aux questions fréquentes sur l'intégration de l'API WhatsApp Business dans un CRM : technique, conformité, multi-tenant et tarifs 2026.
API WhatsApp pour les CRM : guide complet 2026
Guide complet pour intégrer l'API WhatsApp Business dans un CRM : architecture, cas d'usage, tarifs et onboarding pour éditeurs et agences en 2026.