Erreur WhatsApp 132000 : nombre de variables incorrect
Erreur WhatsApp 132000 (Template Param Count Mismatch) : le nombre de variables envoyées ne correspond pas au template. Comment les compter et les envoyer.
L'erreur WhatsApp 132000 signifie que le nombre de valeurs envoyées pour les variables du template ne correspond pas au nombre de variables qu'il contient. Meta refuse le message sans l'envoyer. Recomptez les variables du template approuvé, en-tête et corps, puis envoyez exactement une valeur par variable, dans le bon ordre.
Que signifie l'erreur 132000 ?
« The number of variable parameter values included in the request did not match the number of variable parameters defined in the template. » — Meta, codes d'erreur de la Cloud API
Meta demande de vérifier que la requête fournit une valeur pour chacune des variables exigées
par le template. Le titre associé au code dans le champ message est « Template Param Count
Mismatch » (liste de 360dialog).
Un template déclare ses variables dans un format choisi à sa création (Meta, Templates, parameter formats) :
| Format | Écriture dans le template | Règle à l'envoi |
|---|---|---|
| Positionnel (par défaut) | {{1}}, {{2}}… | Les valeurs suivent l'ordre des variables dans le texte |
| Nommé | {{first_name}} (minuscules et tirets bas) | Les valeurs peuvent arriver dans n'importe quel ordre |
Quand l'erreur 132000 apparaît-elle ?
- Une variable d'en-tête oubliée : le titre « Commande
{{1}}expédiée » a sa propre variable, qui ne se remplit pas avec celles du corps. - Un template modifié après l'intégration : une variable a été ajoutée au texte, le code envoie toujours l'ancien nombre de valeurs.
- Une campagne aux variables inégales : certains destinataires ont deux valeurs, d'autres une.
- Un tableau vide ou absent parce qu'une donnée manquait côté application (prénom inconnu,
numéro de commande
nullfiltré).
Où la voir dans Genuka WA ?
| Canal | Ce que vous recevez |
|---|---|
Réponse de POST /api/v1/messages | 400, "error": "send_template", meta.code: 132000, meta.retryable: false |
| Campagne | Les destinataires concernés passent failed ; si la forme des variables est la même pour tous, toute la campagne échoue de la même façon |
Genuka WA classe tout code 132xxx en template : l'erreur est dans la requête, la renvoyer telle
quelle échouera toujours.
Comment corriger l'erreur 132000 ?
Lisez le template tel qu'approuvé avec GET /api/v1/templates/{id} : le champ components
contient le texte de l'en-tête et du corps.
Comptez les variables de chaque composant : celles de l'en-tête texte d'un côté, celles du corps de l'autre.
Placez chaque valeur dans le bon champ de template :
| Dans le template | Dans POST /api/v1/messages |
|---|---|
Corps positionnel {{1}}, {{2}} | body (ou son alias variables) : un tableau, dans l'ordre |
Corps nommé {{first_name}} | bodyNamed : un objet { "first_name": "Awa" } |
En-tête texte avec {{1}} | header: { "text": "CMD-1042" } |
| En-tête image, vidéo ou document | header: { "image": { "assetId": "ast_1" } } |
| Bouton URL dynamique | buttons: [{ "type": "url", "text": "1042" }] |
| Template d'authentification | otp: "472913", qui remplit le corps et le bouton |
# 1. Le template tel qu'approuvé
curl https://wa.genuka.com/api/v1/templates/tpl_123 \
-H "Authorization: Bearer $GENUKA_WA_API_KEY"
# "components": [
# { "type": "HEADER", "format": "TEXT", "text": "Commande {{1}} expédiée" },
# { "type": "BODY", "text": "Bonjour {{1}}, votre colis arrive {{2}}." }
# ]
# 2. Une valeur pour l'en-tête, deux pour le corps
curl -X POST https://wa.genuka.com/api/v1/messages \
-H "Authorization: Bearer $GENUKA_WA_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"connectionId": "con_1",
"to": "+237690000001",
"template": {
"name": "colis_expedie",
"language": "fr",
"header": { "text": "CMD-1042" },
"body": ["Awa", "demain"]
}
}'Comment éviter l'erreur 132000 ?
- Validez avant d'envoyer, avec un compteur comme ci-dessus, et refusez localement une requête incomplète : l'erreur arrive plus tôt et nomme la donnée manquante.
- Versionnez vos templates (
colis_expedie_v2) quand vous changez leurs variables, plutôt que de modifier un template déjà utilisé par votre code. - Contrôlez chaque destinataire d'une campagne avant
POST /api/v1/campaigns: même nombre de valeurs pour tous, aucune valeur vide. - Vérifiez aussi le format : un template créé en paramètres nommés se remplit avec
bodyNamed, pas avec un tableau.
Quels codes sont liés ?
- 132001 : le template lui-même est introuvable dans cette langue, ou pas approuvé.
- 132015 : le template est en pause pour mauvaise qualité.
- 131047 : la fenêtre de 24 heures est fermée, d'où le passage au template.
FAQ
Les exemples donnés à la création comptent-ils à l'envoi ?
Non. Les exemples servent à l'examen du template par Meta ; à l'envoi, vous fournissez les vraies valeurs, une par variable.
L'ordre des valeurs compte-t-il ?
Pour un template positionnel, oui : la première valeur remplit {{1}}, la deuxième {{2}}. Pour
un template nommé, non : Meta accepte les valeurs dans n'importe quel ordre.
Pourquoi toute ma campagne échoue-t-elle en 132000 ?
Parce que l'erreur vient de la forme des variables, identique pour tous les destinataires. Genuka
WA ne réessaie pas une erreur de template, et une campagne déjà lancée ne renvoie que ses
destinataires encore pending : corrigez les variables, puis créez une nouvelle campagne.