Intégrations
Intégration n8n
Envoyez des messages WhatsApp depuis vos workflows n8n. Par exemple, écrivez à un nouveau prospect depuis un webhook, confirmez une commande de votre boutique ou envoyez une alerte lorsqu'une vérification échoue.
Il existe deux façons de vous connecter :
- Le community node Wbiztool (
n8n-nodes-wbiztool) : des nodes prêts à l'emploi avec un champ pour chaque option. - Le node HTTP Request intégré : fonctionne sur toutes les instances n8n et donne accès à tous les endpoints de l'API. Consultez Utiliser le node HTTP Request.
Avant de commencer#
- Un compte Wbiztool avec un numéro WhatsApp connecté dans les paramètres WhatsApp.
- Votre Client ID et votre clé API, disponibles dans Paramètres → Clés API.
- Le WhatsApp Client ID du numéro d'envoi, affiché dans les paramètres WhatsApp.
Installer le community node#
Ouvrez les community nodes
Dans n8n, allez dans Settings → Community Nodes (paramètres → community nodes) et cliquez sur Install (installer).
Saisissez le nom du package
Saisissez
n8n-nodes-wbiztool, confirmez et installez. Redémarrez n8n si les nodes n'apparaissent pas.
Sur une instance auto-hébergée, vous pouvez aussi l'installer avec npm dans le dossier des custom nodes de n8n :
npm install n8n-nodes-wbiztool
Créer l'identifiant (credential)#
Ajoutez un nouveau credential de type WbizTool API :
| Champ | Valeur |
|---|---|
| Client ID | Votre API Client ID. |
| API Key | Votre clé API. |
| WhatsApp Client ID | Le numéro d'envoi par défaut. La plupart des nodes permettent de le remplacer. |
| Base URL | Conservez la valeur par défaut https://wbiztool.com/api/v1 (sans barre oblique finale). |
À l'enregistrement, n8n teste le credential avec l'endpoint Vérifier les identifiants.
Nodes#
Le package ajoute les nodes suivants. Chacun appelle un endpoint de l'API Wbiztool et renvoie la réponse de l'API.
| Node | Ce qu'il fait | API |
|---|---|---|
| WbizTool Send Message | Envoie un texte, une image ou un fichier à un numéro de téléphone ou à un groupe. | Envoyer un message, Envoyer à un groupe |
| WbizTool Send Group Message | Envoie un message à un groupe WhatsApp à partir de son nom. | Envoyer à un groupe |
| WbizTool Send Multi Message | Envoie le même message à une liste de numéros séparés par des virgules. | Envoyer à plusieurs numéros |
| WbizTool Schedule Message | Programme un message à une date et une heure. Consultez l'avertissement ci-dessous. | Programmer un message |
| WbizTool Cancel Message | Annule un message programmé à partir de son identifiant. | Annuler un message |
| WbizTool Message Status | Récupère le statut d'un message à partir de son identifiant. Seul un message Sent (envoyé) renvoie un item. Un message en file d'attente, en échec, annulé ou expiré arrête le node avec une erreur comme Created ou Failed ; activez Continue On Fail pour créer une branche selon le résultat. | Statut d'un message |
| WbizTool Check Credentials | Vérifie que votre Client ID et votre clé API fonctionnent. | Vérifier les identifiants |
| WbizTool List WhatsApp Clients | Liste les numéros WhatsApp de votre espace de travail. | Lister les numéros connectés |
| WbizTool Create WhatsApp Client | Ajoute un numéro WhatsApp à votre espace de travail, avec une URL de webhook facultative. | Connecter un numéro WhatsApp |
| WbizTool WhatsApp Client Status | Vérifie si un numéro WhatsApp est connecté. | Statut de connexion |
WbizTool Send Message#
| Champ | Remarques |
|---|---|
| Target Type (type de cible) | Phone Number (numéro de téléphone) ou Group (groupe). |
| Phone Number | Affiché pour Phone Number. Associez-le à une valeur des nodes précédents, par exemple {{ $json.phone }}. |
| Country Code (indicatif pays) | Vaut 91 par défaut. Remplacez-le par l'indicatif pays de vos destinataires. Il est ajouté devant le numéro de téléphone, sauf si le numéro commence déjà par cet indicatif. |
| Group Name (nom du groupe) | Affiché pour Group. Le nom exact d'un groupe dont votre numéro WhatsApp fait partie. |
| Message Type (type de message) | Text, Image with Text ou File with Text (texte, image avec texte ou fichier avec texte). |
| Message Text (texte du message) | Le message, jusqu'à 3 000 caractères. |
| Image URL / File URL / File Name | Affichés pour les messages image et fichier. Les URL doivent être publiques. |
| WhatsApp Client ID (Optional) | Laissez vide pour utiliser le numéro défini dans le credential. |
| Additional Options (options supplémentaires) | Expire After (Seconds) (expiration en secondes) et Webhook URL. |
Le node renvoie messageId (le msg_id de l'API). Conservez-le si vous souhaitez vérifier le statut du message ou l'annuler plus tard.
Exemple de workflow#
- Un node Webhook reçoit un nouveau prospect avec
phoneetname. - WbizTool Send Message : définissez Phone Number sur
{{ $json.phone }}et Message Text surHi {{ $json.name }}, thanks for signing up!. - Node IF : vérifiez que
{{ $json.messageId }}n'est pas vide pour passer à l'étape suivante, par exemple la mise à jour de votre CRM.
Un WbizTool Send Message réussi renvoie un item comme celui-ci :
{
"success": true,
"messageId": 9817263,
"status": 1,
"message": "Created",
"response": { "status": 1, "message": "Created", "msg_id": 9817263 }
}
L'item inclut aussi un objet input avec les valeurs envoyées par le node. Si l'API renvoie une erreur, le node s'arrête et affiche le message de l'API. Activez Continue On Fail pour obtenir à la place un item avec success: false et le texte de l'error.
Pour WbizTool WhatsApp Client Status, utilisez la méthode de vérification General Status. La méthode Status by ID renvoie une erreur pour tous les numéros, à cause d'un bug de cet endpoint de l'API. Avec General Status, un numéro non connecté arrête aussi le node avec une erreur Disconnected : activez le paramètre Continue On Fail du node si vous voulez créer une branche selon le résultat.
Utiliser le node HTTP Request#
Ajoutez un node HTTP Request et configurez-le ainsi :
| Paramètre | Valeur |
|---|---|
| Method | POST |
| URL | https://wbiztool.com/api/v1/send_msg/ |
| Authentication | None |
| Send Body | On |
| Body Content Type | JSON |
| Specify Body | Using JSON |
Collez ensuite un corps comme celui-ci et associez les valeurs des nodes précédents à l'aide d'expressions :
{
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"whatsapp_client": 678,
"msg_type": 0,
"country_code": "91",
"phone": "{{ $json.phone }}",
"msg": "Hi {{ $json.name }}, thanks for signing up!"
}
Un appel réussi renvoie {"status": 1, "message": "Created", "msg_id": 9817263}. Tous les champs et messages d'erreur sont décrits dans l'API d'envoi de messages.
Pour appeler d'autres endpoints, modifiez l'URL et le corps. Par exemple, pour programmer un message, utilisez https://wbiztool.com/api/v1/schedule_msg/ et ajoutez date au format DD/MM/YYYY, time au format HH:MM et timezone. Consultez Programmer un message.
Pour envoyer le même message à plusieurs numéros ou groupes en un seul appel, utilisez https://wbiztool.com/api/v1/send_msg/multi/ et placez les destinataires dans phone sous la forme d'une seule chaîne séparée par des virgules. Consultez Envoyer à plusieurs numéros.
{
"client_id": 12345,
"api_key": "YOUR_API_KEY",
"whatsapp_client": 678,
"msg_type": 1,
"country_code": "91",
"phone": "{{ $json.phones }}",
"img_url": "https://example.com/offers/diwali-sale.jpg",
"msg": "Our Diwali sale starts tomorrow!"
}
Ne mettez que des chiffres dans chaque numéro. Tout ce qui n'est pas un nombre entier, comme 98765 43210, est envoyé comme nom de groupe.
Les expressions n8n fonctionnent dans n'importe quel champ de texte. Par exemple, une salutation qui dépend du moment de la journée, ou un texte qui dépend du montant total de la commande :
{
"msg": "Good {{ $now.hour < 12 ? 'morning' : 'evening' }} {{ $json.name }}, your order total is {{ $json.total }}.{{ $json.total > 1000 ? ' Delivery is free.' : '' }}"
}
$now utilise le fuseau horaire du workflow (Workflow settings → Timezone) : réglez-le pour décider quand se termine le « morning ».
Être averti de l'envoi d'un message#
Créez un workflow de webhook
Ajoutez un node Webhook avec la méthode HTTP
POSTet copiez son URL de production.Transmettez l'URL lors de l'envoi
Indiquez cette URL dans l'option Webhook URL du node, ou dans le champ
webhookdu corps de votre requête HTTP.Lisez le résultat
Wbiztool appelle l'URL une fois le message envoyé ou en échec. Le corps est encodé en formulaire et ne contient que
msg_idetstatus, qui vautSENTouFAILED.
Consultez Webhook pour les nouvelles tentatives et les délais d'expiration.
Dépannage#
| Problème | Ce qu'il faut vérifier |
|---|---|
| Le test du credential échoue | Vérifiez le Client ID et la clé API dans Paramètres → Clés API, que Base URL ne se termine pas par une barre oblique, et que le WhatsApp Client ID du credential correspond à un numéro de cet espace de travail. |
Auth Error: invalid api key | La clé a été supprimée ou appartient à un autre espace de travail. |
Invalid whatsapp client | Le WhatsApp Client ID ne correspond à aucun numéro de cet espace de travail. |
Invalid phone number | La valeur du téléphone contient des lettres ou des symboles autres que des espaces, points, tirets, parenthèses et +, ou comporte moins de 6 ou plus de 17 chiffres. Associez un numéro composé uniquement de chiffres, comme 919876543210. |
Either phone or group_name parameter is required | La valeur de téléphone associée est vide pour cet item. |
Invalid Contact Number "…" | Le numéro dépasse 15 chiffres une fois l'indicatif pays ajouté. Vérifiez que l'indicatif pays n'est pas ajouté à un numéro qui en contient déjà un. |
Not enough credits | Votre forfait n'a plus de messages. |
| Le node réussit mais le message n'est pas envoyé | Le message attend dans la file d'attente jusqu'à ce que votre numéro WhatsApp soit connecté. Vérifiez-le avec Statut d'un message via le node HTTP Request, ou dans votre historique des messages. Le node WbizTool Message Status signale un message en file d'attente comme une erreur nommée Created. |
