Envoyez des e-mails dans la langue de vos clients

Un client de Munich ne devrait pas recevoir de confirmation de commande en anglais, et vous ne devriez pas avoir besoin de trois modèles d'e-mail et de trois workflows pour éviter cela. Un seul modèle d'e-mail peut prendre en charge toutes les langues dans lesquelles vous vendez vos produits. L'étape Shopify Flow indique la langue parlée par le client, et l'application envoie la version correspondante. Tous les autres clients reçoivent le modèle dans leur langue principale.

Ce guide vous explique comment passer d'une mise en page monolingue à des e-mails rédigés dans la langue de vos clients, et aborde tous les cas particuliers : langues inconnues, variantes régionales, modifications ultérieures, tests et dépannage.

Comment cela fonctionne-t-il ?

  • Une mise en page comporte une langue principale. Il s'agit de la mise en page elle-même, la version dont vous disposez aujourd'hui.
  • Vous y ajoutez des traductions : en allemand, en français, jusqu'à 30 par mise en page. Chacune comporte son propre sujet, son texte d'aperçu et son contenu.
  • Dans Shopify Flow, l'action « Envoyer un e-mail transactionnel » comporte un champ « Langue ». Définissez-le sur la langue du client, par exemple {{order.customerLocale}}.
  • Lorsque l'e-mail est envoyé, l'application sélectionne la traduction correspondante. S'il n'y en a pas, c'est la langue principale qui est envoyée. Un e-mail n'est jamais bloqué en raison de sa langue.

Une mise en page, un workflow, toutes les langues.

Étape 1 : Ajouter une langue

  1. Ouvrez le modèle dans la rubrique « Modèles d'e-mails ».
  2. Cliquez sur « Ajouter une langue » en haut de la page.
  3. Sélectionnez la langue dans la rubrique « Langue à ajouter », puis cliquez sur « Ajouter une langue ».

La nouvelle langue s'ouvre directement dans l'éditeur, à partir d'une copie de votre mise en page enregistrée. Traduisez l'objet, le texte d'aperçu et le contenu, puis cliquez sur « Enregistrer ».

Une fois connecté à un fournisseur d’IA, vous pouvez choisir l’option « Traduire avec l’IA » plutôt que de copier le texte. Chaque texte est traduit ; les balises Liquid telles que {{ variables.order_name }}, les liens et la mise en page restent exactement tels quels. Rien n’est envoyé avant que vous n’ayez vérifié et enregistré le texte. Consultez Créez, modifiez et traduisez des mises en page grâce à l'IA.

La boîte de dialogue « Ajouter une langue » d'un modèle d'e-mail dans lequel l'allemand est sélectionné
Ajouter une langue : choisissez la langue. La page s'affiche alors comme une copie de la mise en page, prête à être traduite.

Des mises en page que vous avez créées avant même que les langues n'existent

Une mise en page créée avant l'introduction de cette fonctionnalité ne dispose pas encore de langue principale. Nous n'avons jamais demandé dans quelle langue elle est rédigée, et nous ne faisons aucune supposition à ce sujet. La première fois que vous ajoutez une langue à une telle mise en page, la boîte de dialogue s'ouvre avec une question supplémentaire : « Langue principale de cette mise en page ».

  • Aucune option n'est présélectionnée. Choisissez la langue dans laquelle la mise en page est rédigée aujourd'hui : l'allemand pour une mise en page en allemand.
  • La langue à ajouter et le bouton « Ajouter une langue » restent désactivés tant que vous n'avez pas effectué votre choix.
  • Cette question vous est posée une seule fois par mise en page. Pour les mises en page que vous créerez désormais, la langue sera sélectionnée sur la page de création.

Il est important de bien comprendre ce point : les clients dont la langue ne dispose pas de traduction reçoivent la langue principale, et les traductions sont comparées à celle-ci.

La boîte de dialogue « Ajouter une langue » dans une mise en page créée avant l'introduction des langues : la langue principale de cette mise en page apparaît en premier et est obligatoire, suivie de la langue à ajouter
Une mise en page que vous avez créée avant l’apparition des langues vous demande d’abord dans quelle langue elle est rédigée. Aucune option n’est présélectionnée, et le bouton « Ajouter une langue » reste désactivé tant que vous n’avez pas effectué votre choix.

Étape 2 : Traduisez dans le même éditeur

Une traduction s'ouvre dans l'éditeur que vous connaissez déjà : le générateur visuel pour les mises en page de type « builder », le format RTF ou HTML pour les autres. Le changement de langue ne modifie pas l'affichage à l'écran, mais uniquement le contenu.

  • Changez de langue à l'aide du sélecteur de langue : dans la barre située au-dessus de la zone d'édition dans le générateur visuel, en haut de la fiche « Contenu de l'e-mail » dans une mise en page en texte enrichi / HTML.
  • L'entrée intitulée (mise en page) correspond à la langue principale.
La version allemande d'une mise en page en texte enrichi : même écran, nom et description en lecture seule, objet et corps du message en allemand
Le changement de langue ne modifie pas l'affichage à l'écran. Le nom et la description sont communs à toutes les langues et en lecture seule ; l'objet, le texte d'aperçu et le corps du message sont propres à chaque langue.
L'éditeur visuel affichant la version allemande d'une confirmation de commande
Le générateur visuel fonctionne de la même manière : choisissez la langue dans la barre située au-dessus de la zone de travail.

Pièces jointes par langue

Une facture allemande au format PDF, une fiche de conditions en français : les pièces jointes peuvent varier selon la langue.

Mises en page visuelles. Les pièces jointes sont des blocs de pièces jointes dans le modèle, et chaque langue dispose de son propre modèle. Une nouvelle langue commence par une copie ; elle reprend donc les mêmes blocs de pièces jointes. Si vous remplacez le fichier dans la version allemande, seules les e-mails en allemand en bénéficieront.

Mise en page en texte enrichi / HTML. La fiche « Pièces jointes » d'une page de traduction s'ouvre sur un choix : « Pièces jointes dans cette langue » :

Choix Ce qui est envoyé
Identique à la langue principale Les fichiers de la langue principale. Modifiez-les à cet endroit. Il s'agit du paramètre par défaut pour toutes les langues.
Différentes extensions pour cette langue Seuls les e-mails envoyés dans cette langue contiennent ces fichiers.

Le choix de pièces jointes différentes pour cette langue s'effectue à partir de la liste de la langue principale ; ainsi, le remplacement d'un fichier PDF correspond à une seule modification. Si vous supprimez tous les fichiers, les e-mails rédigés dans cette langue seront envoyés sans pièces jointes, tandis que la langue principale conservera les siennes. Revenez à l'option « Identique à la langue principale » et cette langue suivra à nouveau les paramètres de la langue principale.

Le fait de définir une langue comme langue principale permet à chaque langue de continuer à envoyer exactement ce qu’elle envoyait auparavant ; ainsi, la promotion d’une traduction ne modifie jamais les pièces jointes de quiconque.

Les limites de taille et les modes « Joindre » / « Lier » sont les mêmes que pour la langue principale ; veuillez consulter Pièces jointes et images.

Pied de page marketing par langue

Une mise en page marketing se termine par la mention de désabonnement et les coordonnées de votre entreprise. Une traduction peut comporter sa propre formulation : la fiche « Pied de page marketing » de la page de traduction propose les options « Identique à la mise en page » ou « Textes personnalisés pour cette langue ». Si le champ est laissé vide, le texte de la mise en page est utilisé par défaut. Pour savoir comment fonctionne le pied de page et où se trouvent les textes communs à l’ensemble de la boutique pour chaque langue, consultez la page E-mails marketing et désabonnements.

Étape 3 : Indiquez à Shopify Flow la langue dans laquelle envoyer le message

Dans l'action « Envoyer un e-mail transactionnel », définissez le paramètre « Langue » sur la variable de Shopify Flow qui contient la langue de votre client :

Déclencheur Langue
Commande créée, commande réglée {{order.customerLocale}}
Créé par un client {{customer.locale}}
Traitement des commandes {{fulfillment.order.customerLocale}}

Pour un workflow destiné à un seul marché, saisissez un code fixe tel que de.

Ce champ est facultatif. Les workflows que vous avez créés auparavant continuent de fonctionner sans modification : en l'absence de langue indiquée, ils envoient la langue par défaut, exactement comme ils l'ont toujours fait.

L'action « Envoyer un e-mail transactionnel » dans Shopify Flow, avec les champs « Répondre à », « Nom de l'expéditeur », la langue définie sur « order.customerLocale » et les variables
L'action « Shopify Flow : Language » récupère la langue du client, en l'occurrence {{order.customerLocale}}. Les champs « Reply-To » et « From » sont également définis à chaque étape.

Quelle version le client reçoit-il ?

L'application recherche la correspondance la plus pertinente, dans l'ordre suivant :

  1. La formulation exacte. fr-CA vous envoie la traduction de fr-ca.
  2. La langue source. Les sites de-CH et de-AT vous permettent d'envoyer votre traduction à l'adresse de. Une seule traduction en allemand couvre l'Allemagne, l'Autriche et la Suisse.
  3. Une variante régionale. pt vous envoie la traduction de pt-br.
  4. Sinon, la langue principale. La mise en page elle-même est envoyée.

La distinction entre majuscules et minuscules ainsi que le séparateur n'ont aucune importance : de-DE, de-de et de_DE sont identiques.

Et si cette langue n'existait pas ?

Il n'y a aucun problème. L'e-mail est envoyé dans la langue principale lorsque :

  • la langue du client ne dispose d'aucune traduction (il s'agit d'un client japonais, et vous avez traduit en allemand et en français),
  • le champ « Langue » est vide, ou si la variable « Shopify Flow » n'a pas de valeur pour ce client,
  • Cette valeur n'est pas du tout une langue.

fr ou pt-BR

Une mise en page pour chaque langue

Parfois, une traduction complète ne correspond pas à vos besoins : l'e-mail est identique pour tout le monde, à l'exception d'une seule phrase. Dans ce cas, tous les modèles de mise en page prennent en charge la balise {{ language }}.

{{ language }} Il s'agit de la langue envoyée par votre étape de Shopify Flow, en minuscules (de, fr, de-at). Lorsque l'étape n'envoie aucune langue, il s'agit de la langue principale de la mise en page. Cela s'applique à l'objet, au texte d'aperçu et au corps du message, aussi bien dans le générateur visuel que dans les mises en page en texte enrichi / HTML, ainsi qu'au sein d'une traduction.

{% if language == "de" %}
  <p>Retouren aus Deutschland gehen an unser Lager in Hamburg.</p>
{% else %}
  <p>International returns are refunded within 10 working days.</p>
{% endif %}

Dans l'éditeur visuel, insérez ceci dans un bloc HTML / Code. Dans une mise en page RTF / HTML, basculez le corps du texte en mode HTML.

Shopify indique souvent une région avec la langue, comme de-AT ou en-GB. {{ language }} conserve cette indication (de-at) ; par conséquent, ne comparez que les deux premières lettres lorsque vous souhaitez désigner « n'importe quel Allemand » :

{% assign lang = language | slice: 0, 2 %}
{% if lang == "de" %}Hallo{% elsif lang == "fr" %}Bonjour{% else %}Hello{% endif %}

{{ language }} C'est ce que demandait l'étape, et non la traduction qui a été trouvée. Pour un client japonais, le message ja s'affiche même si la langue principale a été transmise ; ainsi, une mise en page ne comportant aucune traduction peut tout de même y réagir. La fiche « Variables système » de l'éditeur l'affiche avec sa valeur actuelle et permet de la copier d'un simple clic. Sur une mise en page qui ne dispose pas encore de langue principale, ce champ reste vide jusqu’à ce que Shopify Flow envoie une langue.

Une mise en page HTML dont le corps utilise la condition « if language equals de », à côté de la fiche « Variables système » répertoriant la variable de langue
{{ language }} dans une mise en page : un paragraphe pour les clients allemands, un autre pour tous les autres. La fiche « Variables système » affiche sa valeur actuelle.

Testez avant la mise en service

  • La fonction « Envoyer un e-mail de test » propose un sélecteur de langue dès que la mise en page comporte des traductions. Envoyez-vous un e-mail dans chaque langue une seule fois.
  • Le test utilise vos variables de test, et non des données réelles. Une exécution réelle du workflow constitue la vérification finale ; consultez Vérification de la configuration de votre messagerie électronique.
  • Pour tester l'ensemble de la chaîne, lancez le workflow pour une commande dont le client a pour langue celle dans laquelle vous avez effectué la traduction.

Vérifiez ce qui a été envoyé

L'historique enregistre la langue de chaque e-mail. Ouvrez un événement : la rubrique « Langue » dans les détails de l'événement affiche la traduction qui a été envoyée ou la langue principale de la mise en page. La fonction « Renvoyer » permet de renvoyer le message dans la même langue.

Un événement « Historique » correspondant à l'envoi d'un e-mail, avec le statut, la durée et la langue « allemand » dans la section « Détails de l'événement »
Un événement dans l'historique : la rubrique « Langue » sous « Détails de l'événement » indique quelle version a été publiée.

Modifier la langue principale

Votre boutique a été créée en anglais et la plupart de vos clients sont désormais allemands ? Ouvrez la traduction allemande et cliquez sur « Définir comme langue principale ». L'allemand devient alors la version par défaut et l'anglais une traduction : les deux changent de place et rien n'est perdu. Dès lors, les clients pour lesquels il n'existe pas de traduction correspondante, ainsi que les e-mails sans langue définie, recevront le contenu en allemand. Vous pouvez annuler cette modification à partir de l'historique des versions.

La boîte de dialogue « Faire de l'allemand la langue principale », expliquant que les deux langues échangent leurs places
Définir comme langue principale : la traduction et la mise en page s'inversent. Rien n'est perdu, et cette action peut être annulée à partir de l'historique des versions.

Supprimer une langue

Ouvrez la traduction, puis cliquez sur « Supprimer » et sélectionnez son nom, par exemple « Supprimer l'allemand ». Les clients utilisant cette langue recevront désormais les e-mails dans la langue principale à partir du prochain message. La traduction reste dans l'historique des versions de la mise en page et peut être restaurée. Voir Historique des versions de la mise en page.

Si quelque chose ne se passe pas comme prévu

Un client a reçu la langue principale au lieu de sa propre langue. Ouvrez l'e-mail dans l'historique et consultez la rubrique « Langue ». La mention « Langue principale de la mise en page » signifie qu'aucune traduction ne correspond : le champ « Langue » de l'étape de Shopify Flow est vide, la variable n'avait pas de valeur pour ce client, ou vous ne disposez d'aucune traduction pour cette langue. Vérifiez d’abord l’étape ; le tableau de l’étape 3 indique la variable appropriée pour chaque déclencheur.

L'option « Ajouter une langue » est désactivée. La mise en page ne dispose pas encore de langue principale. Veuillez d'abord sélectionner la langue principale de cette mise en page en haut de la boîte de dialogue.

La langue dont j'ai besoin ne figure pas dans la liste. Cette liste regroupe les langues les plus courantes. Tout code de langue valide peut être ajouté via l'API.

J'ai modifié la mise en page, mais l'e-mail en allemand affiche toujours l'ancien texte. Les traductions sont des copies. Veuillez également apporter cette modification dans la version allemande.

J'ai modifié les pièces jointes, mais une langue envoie toujours l'ancien fichier. Dans une mise en page RTF/HTML, cette langue est configurée sur « Pièces jointes différentes pour cette langue », ce qui fait qu'elle conserve sa propre liste. Ouvrez la traduction et modifiez le fichier à cet endroit, ou sélectionnez l'option « Identique à la langue principale ». Dans une mise en page visuelle, remplacez le fichier dans le bloc « Pièces jointes » de cette langue.

Je ne vois pas le champ « Langue » dans l'action « Shopify Flow ». L'étape a été ajoutée avant cette mise à jour, et Shopify Flow conserve les champs avec lesquels une étape a été créée. Supprimez l'étape « Envoyer un e-mail transactionnel » et ajoutez-la à nouveau : le champ « Langue » apparaît alors entre « Nom de l'expéditeur » et « Variables (JSON) ».

Via l'API

Les traductions peuvent être consultées et modifiées via GET et PUT /api/v1/email-templates/:id/translations/:locale ; une traduction devient la langue principale via POST /api/v1/email-templates/:id/translations/:locale/promote ; et les outils MCP sont accessibles via list_template_translations, set_template_translation et promote_template_translation. Pour une mise en page en texte enrichi / HTML, le champ attachments de la traduction correspond à sa propre liste, ou null pour celle de la langue principale ; marketingTexts contient les textes de pied de page d’une mise en page marketing pour cette langue. Tout code de langue valide est accepté, dans la limite de 30 langues par mise en page. Voir Référence de l'API REST et Connecter un assistant IA (MCP).

Connexes