Variables de modèle WhatsApp : {{1}} ou paramètres nommés
Comment fonctionnent les variables de modèle WhatsApp : {{1}} positionnel ou paramètres nommés, emplacements, valeurs d'exemple, rejets Meta et payload d'envoi.
Par OmniChannels.ai Editorial Team · Relu par BroadNet Messaging Solutions Team
Réponse courte
Une variable de modèle WhatsApp est un espace réservé, {{1}} en positionnel ou {{first_name}} en nommé, que vous renseignez à chaque envoi. Choisissez le format avec parameter_format à la création ; le positionnel est la valeur par défaut. Chaque variable exige une valeur d'exemple. Elles sont autorisées dans le corps, dans un en-tête texte (une seule) et dans un bouton URL (une seule) ; Meta rejette les modèles qui commencent ou finissent par une variable.
Sur cette page
- Que sont les variables de modèle WhatsApp ?
- Quelle différence entre paramètres positionnels et nommés ?
- Où les variables sont-elles autorisées ?
- Comment fournir les valeurs d'exemple ?
- Que dit Meta sur les règles et les rejets liés aux variables ?
- Comment envoyer les paramètres dans l'appel d'API ?
- Exemple concret : un modèle de commande expédiée
- Comment personnaliser un modèle depuis un CSV ?
- Comment choisir entre positionnel et nommé ?
- Quelles sont les erreurs courantes ?
- Comment OmniChannels.ai vous aide
Points clés
- Les variables positionnelles sont numérotées {{1}}, {{2}} et doivent être renseignées dans l'ordre ; les variables nommées utilisent des noms en minuscules avec tirets bas et peuvent l'être dans n'importe quel ordre.
- Un modèle doit inclure une valeur d'exemple pour chaque variable à sa création ; Meta s'en sert pendant la validation.
- Un en-tête texte accepte une variable, le corps en accepte plusieurs, et un bouton URL accepte une variable ajoutée à la fin de l'URL.
- Les causes de rejet documentées par Meta incluent des variables mal formées ou non séquentielles, un modèle qui commence ou finit par une variable, trop de variables pour la longueur du texte, et des caractères spéciaux comme #, $ ou %.
- Personnaliser depuis un CSV, c'est une ligne par destinataire avec une valeur propre pour chaque variable.
Ce guide s'adresse aux développeurs et aux équipes marketing qui créent des modèles WhatsApp avec du contenu personnalisé. Il explique les deux formats de variables, les emplacements possibles, ce que dit Meta sur la validation, et comment envoyer les valeurs depuis l'API ou depuis un tableur.
Que sont les variables de modèle WhatsApp ?
Une variable est un espace réservé dans le texte du modèle que vous remplacez par une vraie valeur à l'envoi. Meta les appelle paramètres. WhatsApp Manager les appelle variables. Le texte du modèle et les valeurs d'exemple sont examinés une seule fois ; les vraies valeurs sont fournies pour chaque message.
Par exemple, le corps d'un modèle se lit Hi {{1}}! Your order number is {{2}}. Thank you. et vous envoyez Hi Layla! Your order number is OM-4821. Thank you. à un client, puis un autre couple de valeurs au suivant.
Meta ne traduit ni le texte du modèle ni les valeurs des variables. Vous les fournissez dans la langue qui convient à chaque version linguistique du modèle.
Quelle différence entre paramètres positionnels et nommés ?
Vous choisissez le format à la création du modèle avec le champ parameter_format. Si vous l'omettez, Meta utilise positional.
| Positionnel | Nommé | |
|---|---|---|
| Espace réservé | {{1}}, {{2}} |
{{first_name}}, {{order_number}} |
| Règle de nommage | Numéroté à partir de 1, dans l'ordre | Unique, lettres minuscules et tirets bas |
| Valeurs d'envoi | Doivent suivre l'ordre des espaces réservés | Peuvent figurer dans n'importe quel ordre |
| Valeurs d'exemple | Tableau body_text |
body_text_named_params avec param_name |
| Idéal pour | Modèles courts avec une ou deux variables | Modèles à plusieurs variables que d'autres doivent maintenir |
Les paramètres nommés se lisent mieux dans une bibliothèque de modèles, et un ordre inversé ne peut pas placer silencieusement un numéro de commande à la place d'un prénom. Les modèles positionnels sont plus courts à écrire et restent la valeur par défaut.
Où les variables sont-elles autorisées ?
La documentation des composants de Meta indique ces emplacements :
| Composant | Variables |
|---|---|
| En-tête texte | Un paramètre |
| Corps | Plusieurs paramètres |
| Bouton URL | Une variable, ajoutée à la fin de l'URL |
| En-tête média (image, vidéo, document) | Aucune ; le fichier d'exemple est fourni à la création et le fichier réel à l'envoi |
| Pied de page, boutons de réponse rapide et de numéro de téléphone | Non indiqués comme acceptant des variables |
Limites de longueur documentées : un en-tête texte jusqu'à 60 caractères, un corps jusqu'à 1 024, un pied de page jusqu'à 60, un libellé de bouton jusqu'à 25 et une URL de bouton jusqu'à 2 000 caractères. Si la valeur d'un bouton URL contient des caractères spéciaux, Meta demande de les encoder en pourcentage.
Comment fournir les valeurs d'exemple ?
La règle de Meta : si votre modèle utilise des variables, vous devez fournir des valeurs d'exemple à sa création, une par paramètre. Un en-tête avec variable exige aussi un example.
Corps positionnel avec exemples :
{
"type": "BODY",
"text": "Hi {{1}}! Your order {{2}} ships on {{3}}.",
"example": { "body_text": [["Layla", "OM-4821", "12 November"]] }
}
Corps nommé avec exemples :
{
"type": "BODY",
"text": "Hi {{first_name}}! Your order {{order_number}} ships on {{ship_date}}.",
"example": {
"body_text_named_params": [
{ "param_name": "first_name", "example": "Layla" },
{ "param_name": "order_number", "example": "OM-4821" },
{ "param_name": "ship_date", "example": "12 November" }
]
}
}
Le modèle lui-même définit "parameter_format": "named" pour la seconde forme. Utilisez des exemples réalistes pour que les relecteurs voient ce que dira le vrai message.
Que dit Meta sur les règles et les rejets liés aux variables ?
Les consignes de validation de Meta citent ces motifs de rejet liés aux variables :
- Les variables sont absentes ou leurs accolades ne sont pas appariées. La forme positionnelle correcte est
{{1}}. - Les variables ne sont pas séquentielles, par exemple
{{1}},{{2}},{{5}},{{4}}. - Le modèle commence ou finit par une variable. Meta parle de paramètres « dangling » (pendants).
- Le modèle compte trop de variables par rapport à la longueur du message. Meta ne donne aucun ratio : ajoutez donc du texte fixe autour de chaque variable.
- Les variables contiennent des caractères spéciaux comme
#,$ou%.
Nous n'avons trouvé aucune déclaration officielle sur deux variables placées directement côte à côte ; nous ne donnons donc pas de règle à ce sujet. Séparez-les par des mots, ce qui se lit aussi mieux.
Pour les règles de catégories et les autres causes de rejet, consultez catégories de modèles WhatsApp et approbation. Pour des formulations prêtes à l'emploi, voyez exemples de modèles de messages WhatsApp.
Comment envoyer les paramètres dans l'appel d'API ?
Vous envoyez le nom du modèle, la langue et un tableau components contenant les valeurs. Voici la forme pour un modèle positionnel :
{
"messaging_product": "whatsapp",
"to": "971500000000",
"type": "template",
"template": {
"name": "order_shipped",
"language": { "code": "en" },
"components": [
{ "type": "body", "parameters": [
{ "type": "text", "text": "Layla" },
{ "type": "text", "text": "OM-4821" },
{ "type": "text", "text": "12 November" }
] }
]
}
}
Pour un modèle nommé, chaque entrée porte aussi parameter_name, qui doit correspondre à l'espace réservé :
{ "type": "text", "parameter_name": "order_number", "text": "OM-4821" }
Comment fonctionnent les paramètres d'en-tête média ?
Un en-tête média n'a pas de variable texte. À la création, l'en-tête contient l'identifiant d'un fichier d'exemple issu du processus d'envoi de Meta, et l'exemple est examiné avec le modèle. À l'envoi, vous passez le fichier, par exemple une image par identifiant de média :
{ "type": "header", "parameters": [ { "type": "image", "image": { "id": "1558081531584829" } } ] }
L'identifiant ci-dessus est l'exemple de la documentation de Meta, pas un vrai fichier.
À quoi cela ressemble-t-il avec l'API OmniChannels.ai ?
Notre point de terminaison sendbulk reçoit le modèle sous forme de champs de formulaire, conformément à la documentation de l'API WhatsApp :
| Élément du modèle | Champs |
|---|---|
| Variable du corps | bodyTemplateVariables |
| Paramètre nommé | bodyTemplateVariables={"parameter_name":"order_id","text":"ORD-12345"} |
| Variable texte de l'en-tête | headerTemplateVariables |
| Image, vidéo ou document d'en-tête | mediaUrl (remplace le média de l'en-tête) |
| Bouton URL dynamique | buttonsTemplateVariable |
Exemple concret : un modèle de commande expédiée
« Souq Rafiq » (fictif), un détaillant des Émirats arabes unis, veut un suivi d'expédition avec une image du produit et un bouton de suivi.
- Rédiger le modèle pour qu'il ne commence ni ne finisse par une variable : « Hi {{1}}, your order {{2}} has shipped and should arrive on {{3}}. Tap the button to follow it. »
- Ajouter l'en-tête sous forme d'image, le pied de page en texte simple, et un bouton URL
https://shop.example/track/{{1}}avec un exemple tel queOM-4821. - Soumettre avec des exemples réalistes pour chaque variable, puis attendre le statut d'approbation.
- Envoyer avec les trois valeurs du corps, le suffixe de suivi et, si vous le remplacez, l'image d'en-tête.
curl -X POST https://api.broadnet.me/whatsapp/message/sendbulk \
-H "Authorization: Bearer $BROADNET_TOKEN" \
-F batchId=0 \
-F campaignName=order-shipped \
-F destinationNo=971500000000 \
-F messageType=TEMPLATE \
-F templateName=order_shipped \
-F templateLanguage=en \
-F bodyTemplateVariables=Layla \
-F buttonsTemplateVariable=OM-4821
Cet extrait montre les noms de champs pour une seule valeur. Pour plusieurs variables de corps par destinataire, utilisez un import personnalisé plutôt que de répéter la commande. Confirmez l'encodage avec notre équipe pour votre première campagne.
Comment personnaliser un modèle depuis un CSV ?
Utilisez une ligne par destinataire et une colonne par variable, puis importez le fichier dans un envoi personnalisé.
- Mettez le numéro du destinataire au format international dans la première colonne. Voir format de numéro de téléphone E.164.
- Ajoutez une colonne par variable, et confirmez la disposition des colonnes avec notre équipe pour votre première campagne.
- Nettoyez d'abord les données : supprimez les espaces superflus, corrigez la casse, utilisez un seul format de date et retirez les valeurs vides, car une variable vide produit un message cassé ou un envoi en échec.
- Prévisualisez plusieurs lignes et envoyez d'abord à votre propre numéro.
Le nettoyage des données est traité dans envoyer des SMS en masse depuis Excel ou CSV ; il s'applique aussi à WhatsApp.
Comment choisir entre positionnel et nommé ?
Choisissez selon le nombre de personnes qui toucheront au modèle et le nombre de variables.
- Une ou deux variables, un seul responsable : le positionnel convient et c'est la valeur par défaut.
- Trois variables ou plus, ou plusieurs équipes qui modifient les modèles : utilisez le nommé, pour que chaque espace réservé s'explique de lui-même.
- Même texte en plusieurs langues : gardez les mêmes noms ou numéros dans toutes les versions, pour qu'une seule routine d'envoi remplisse toutes les langues.
- Conservez toujours la correspondance entre colonne source et variable, pour qu'une modification ultérieure du modèle ne décale pas les données.
Avant de soumettre, relisez à voix haute le message terminé avec les valeurs d'exemple. S'il sonne faux, les relecteurs et les clients le penseront aussi.
Quelles sont les erreurs courantes ?
- Commencer ou finir par une variable, ce que Meta cite comme motif de rejet.
- Sauter des numéros ou réutiliser le même numéro dans le désordre dans un modèle positionnel.
- Exemples bidons comme « test », qui n'apprennent rien aux relecteurs.
- Caractères spéciaux comme
#,$ou%dans les variables. - Mauvais ordre à l'envoi dans un modèle positionnel, qui met les bonnes données au mauvais endroit.
parameter_namenon concordant dans un modèle nommé.- Utiliser une variable pour masquer la vraie finalité du message. Un modèle dont la catégorie ne correspond pas au contenu peut être rejeté ou recatégorisé ; voir le guide des catégories.
- Limites : ce guide rapporte ce que la documentation de Meta indique au moment de la rédaction. Les décisions de validation restent à Meta et les règles évoluent : vérifiez les pages citées.
Comment OmniChannels.ai vous aide
BroadNet est un fournisseur de solutions d'entreprise (Business Solution Provider) officiel de Meta. Dans OmniChannels.ai, vous pouvez créer des modèles WhatsApp avec variables, médias et boutons, les prévisualiser et suivre leur statut d'approbation, puis les envoyer avec des valeurs personnalisées depuis l'API ou depuis un import Excel ou CSV dans une campagne. Le filtrage des doublons et les rapports de livraison sont inclus. Consultez la page API WhatsApp Business et la plateforme de campagnes.
Questions fréquentes
Quelle différence entre paramètres positionnels et paramètres nommés ?
Les modèles positionnels utilisent des espaces réservés numérotés comme {{1}} et exigent que les valeurs d'envoi suivent le même ordre. Les modèles nommés utilisent des noms en minuscules avec tirets bas, comme {{order_number}}, et les valeurs peuvent figurer dans n'importe quel ordre dans le payload d'envoi. Si vous ne définissez pas parameter_format à la création, Meta applique le format positionnel.
Où peut-on utiliser des variables dans un modèle WhatsApp ?
La documentation de Meta cite le corps, qui accepte plusieurs paramètres, un en-tête texte, qui en accepte un seul, et un bouton URL, qui accepte une variable ajoutée à la fin de l'URL. Les en-têtes média portent un fichier plutôt qu'une variable. Le pied de page, les boutons de réponse rapide et les boutons de numéro de téléphone ne sont pas indiqués comme acceptant des variables.
Pourquoi mon modèle a-t-il été rejeté à cause des variables ?
Les consignes de validation de Meta citent plusieurs causes liées aux variables : accolades manquantes ou non appariées, variables non séquentielles, message qui commence ou finit par une variable, trop de variables par rapport à la longueur du message, et caractères spéciaux comme #, $ ou %. Corrigez le texte, ajoutez des exemples réalistes et soumettez à nouveau.
Les valeurs d'exemple sont-elles obligatoires ?
Oui. Meta indique que si un modèle utilise des variables, vous devez fournir des valeurs d'exemple à sa création, une par paramètre. Utilisez des valeurs réalistes, pas des mots comme test, pour que les relecteurs voient à quoi ressemblera le message final. Les exemples ne servent qu'à la validation ; les vraies valeurs sont fournies à l'envoi.
Une variable peut-elle contenir un saut de ligne ou un lien ?
Ce guide ne couvre que ce que nous avons vérifié dans la documentation de Meta, et les pages consultées n'énoncent aucune règle sur les sauts de ligne dans les valeurs de variables. Testez par un envoi réel vers votre propre numéro, et interrogez notre équipe si vous comptez passer des valeurs longues ou mises en forme. La valeur d'un bouton URL est ajoutée à la fin de l'URL du bouton.
Comment personnaliser un modèle à partir d'un tableur ?
Gardez une ligne par destinataire et une colonne par variable, avec des valeurs propres : noms sans espaces superflus, dates dans un seul format, numéros au format international. Importez le fichier lors d'un envoi personnalisé et vérifiez l'aperçu. Confirmez la disposition exacte des colonnes avec notre équipe avant votre première campagne.
Sources
À lire aussi
Autres guidesWhatsApp
Meilleur fournisseur d'API WhatsApp Business en Afrique (2026)
Choisir le meilleur fournisseur d'API WhatsApp Business en Afrique : marchés tarifaires Meta, lois NDPA, POPIA et Kenya, langues des modèles, repli SMS.
10 min de lecture
WhatsApp
Meilleur fournisseur WhatsApp Business API au Canada (Québec)
Comment choisir le meilleur fournisseur WhatsApp Business API au Canada : application ou API, grille neutre, LCAP (CASL), Loi 25, modèles fr_CA et SMS de secours.
9 min de lecture
Intégration
Format E.164 des numéros de téléphone : conversion et validation
Format E.164 expliqué : règles, conversion des numéros locaux avec un tableau d'exemples, exigences des API WhatsApp et SMS, regex et libphonenumber.
9 min de lecture
