Éditeur de workflows de fidélité¶
Un workflow est une règle qui récompense automatiquement les clients. Chaque workflow commence par un déclencheur (« quand cela se produit »), peut se ramifier selon des conditions (« seulement si… ») et exécute une ou plusieurs actions (« faire ceci »). Vous le créez visuellement sur un canevas.
Ouvrez l'éditeur depuis le tableau de bord Loyalty : cliquez sur Manage Workflows, puis sur Create Workflow et choisissez une recette prête à l'emploi ou Start from scratch. Pour modifier un workflow existant, cliquez sur son nom dans la liste.

L'éditeur comporte trois zones :
- Toolbar (haut) — le nom du workflow, sa planification et son budget, son statut et les boutons d'action. Voir La barre d'outils.
- Canvas (centre) — le flux visuel de votre déclencheur et de vos étapes.
- Config panel (droite) — les paramètres de l'étape sélectionnée. Cliquez sur Performance et ce panneau affiche à la place les résultats du workflow.
Commandes sans compte client
Les workflows récompensent un client : une commande passée en paiement invité, sans client associé, n'exécute donc aucun workflow.
Étape 1 — Choisir un déclencheur¶
Chaque workflow a exactement un déclencheur. Cliquez sur la carte Start when... du canevas et choisissez un déclencheur dans le menu. Pour le modifier plus tard, sélectionnez le déclencheur et cliquez sur Change dans le panneau de configuration : le changement efface les paramètres du déclencheur et vous demande d'abord confirmation si vous les aviez modifiés.

| Déclencheur | Se déclenche quand… |
|---|---|
| Order Complete | Une commande est payée. Vous pouvez éventuellement définir Only orders with a subtotal of at least un montant (articles après remises, avant livraison et taxes), ou cocher Skip orders paid entirely with discounts. |
| Customer Signup | Un nouveau compte client est créé. Vous pouvez éventuellement cocher Only if the email is verified at sign-up — un client qui vérifie son e-mail plus tard n'est pas pris en compte, car Shopify n'envoie pas de second événement. |
| Customer Birthday | C'est l'anniversaire du client, vérifié une fois par jour à 09:00 UTC. Choisissez On the day ou Days before (jusqu'à 30). La date d'anniversaire provient d'une métadonnée client (custom.birthday par défaut — ouvrez More options pour utiliser un autre namespace.key) ou d'un tag client au format bday:MM-DD. |
| Product Purchase | Un produit précis est acheté. Choisissez les produits, une quantité totale minimale (1 par défaut) et, éventuellement, une plage de montants que ces produits doivent atteindre. |
| Collection Purchase | Un produit d'une collection choisie est acheté. Vous pouvez éventuellement définir une plage de montants que les articles de la collection doivent atteindre. |
| Order Fulfilled | Une commande est entièrement expédiée (par défaut) — ou choisissez Any shipment. |
| Refund Created | Un remboursement est émis. Choisissez Any refund, Full refund only ou Partial refund only, et un montant de remboursement minimum facultatif. |
Sélectionner un déclencheur ouvre ses paramètres dans le panneau de configuration.
Choisir des variantes individuelles
Le sélecteur de produits affiche les variantes. Si vous cochez toutes les variantes, le produit entier est choisi, donc les variantes ajoutées plus tard comptent aussi. Si vous n'en cochez que certaines, le workflow se limite exactement à ces variantes — utile lorsqu'un produit mélange des cartes-cadeaux de différentes valeurs avec d'autres articles. Le panneau les compte séparément, par exemple « 1 product, 9 variants ».
Paliers de récompense par montant
Product Purchase et Collection Purchase ne peuvent se déclencher que si les produits choisis (ou les articles de la collection) totalisent un montant From une valeur Under une autre — par exemple de 150 $ à moins de 200 $. Seules les lignes correspondantes comptent, à leur prix après remises ; le reste du panier n'est pas pris en compte. La borne inférieure est incluse et la borne supérieure ne l'est pas : vous pouvez donc créer un workflow par palier (150–200 $, 200–250 $, … et un dernier à partir de 1 000 $ sans borne supérieure), et exactement un seul se déclenche pour chaque commande. Le panneau relit votre plage (« Matches from $150 to under $200 ») et signale une plage qu'aucune commande ne pourrait atteindre. Utilisez {{ trigger.matched_amount }} dans un message pour afficher le montant pris en compte. Pour récompenser toute une échelle dans un seul workflow — et compter les achats d'un client sur une période donnée comme un seul — utilisez plutôt Reward Tiers.
Remboursement total ou partiel
Un remboursement est considéré comme total lorsque, avec les remboursements précédents de la commande, il rembourse la totalité du montant de la commande. Ainsi, si vous remboursez d'abord une partie de la commande puis le reste plus tard, le premier remboursement est partiel et le second est total. Chaque remboursement effectué avant ce point est partiel. Sous Refund Created, les conditions telles que Order contains product vérifient la commande remboursée — par exemple, n'exécutez un workflow que pour les remboursements de commandes contenant votre produit carte-cadeau. Le workflow s'exécute pour chaque remboursement d'une commande.
Les déclencheurs déterminent les conditions et actions disponibles
Les conditions qui lisent les détails de la commande (comme Order Amount), ainsi que les actions Add Order Tag / Note et Reward Tiers, n'apparaissent que si votre déclencheur fournit des données de commande. Sous Customer Signup ou Customer Birthday, par exemple, elles sont masquées car il n'y a pas de commande. Si vous changez le déclencheur d'un workflow après avoir ajouté une de ces étapes, l'étape est signalée et le workflow ne peut pas être activé tant que vous ne rétablissez pas le déclencheur initial ou ne supprimez pas l'étape.
Étape 2 — Ajouter des étapes¶
Cliquez sur le bouton + sous une carte pour ajouter l'étape suivante. Vous pouvez ajouter une condition ou une action. Pour supprimer une étape, cliquez sur le ✕ de sa carte.

Conditions¶
Une condition est une barrière. Les étapes placées sur sa branche YES ne s'exécutent que si la vérification réussit ; celles placées sur la branche NO s'exécutent si elle échoue.
Choisissez Add condition dans le menu, puis sélectionnez ce qu'il faut vérifier dans la liste Condition type du panneau de configuration. Le panneau se lit comme une phrase — « Go to YES when all of these are true » — et chaque vérification propose des comparaisons en langage courant :
| Condition | Vérifie | Choix |
|---|---|---|
| Order Amount | Le Subtotal (before tax/shipping) de la commande, son Total (after tax/shipping) ou son Discount amount | is at least, is more than, is at most, is less than, is exactly |
| Customer Tag | Les tags du client dans Shopify | has any of, has all of, has none of |
| First Order | Si c'est la première commande du client | is the first order, is a repeat order |
| Tier Level | Le palier de fidélité actuel du client, comparé par niveau | is, is not, is at least, is at most |
| Order contains product | Si des produits (ou variantes) précis figurent dans la commande, avec une quantité minimale | contains, does not contain |
| Product in Collection | Si les produits commandés appartiennent à certaines collections | has a product from, has only products from, has no products from |
| Order Item Count | Le nombre d'articles, soit Total quantity, soit Unique items | les mêmes cinq comparaisons que pour Order Amount |
| Customer Total Spent | Les dépenses totales du client depuis le début, avant cette commande | les mêmes cinq comparaisons que pour Order Amount |
| Tier Reward Earned | Si l'étape Reward Tiers placée avant a attribué à cette commande un complément de palier. Proposé une fois que le workflow contient une étape Reward Tiers | earned a tier reward top-up, earned no top-up |
| Tier Reward Reduced | Si le remboursement a réduit la récompense de palier — voir Remboursements et Reward Tiers. Proposé une fois que le workflow contient une étape Reward Tiers Refund | reduced the tier reward, left the tier reward as it was |
Pour exiger plusieurs vérifications à la fois, cliquez sur + Add condition dans le panneau : chaque ligne doit réussir pour que la branche YES soit prise ; sinon la commande prend la branche NO. Cliquez sur une ligne pour l'ouvrir, et sur l'icône de corbeille pour la supprimer.

Comment First Order, Customer Total Spent et Tier Level voient vos clients
Gift Card Hero compte lui-même les commandes et les dépenses totales de chaque client, à partir du moment où le client a reçu sa première récompense — date à laquelle son solde de récompenses est créé. Les commandes antérieures ne sont pas comptées. Ainsi, First Order est vrai pour tout client qui n'a encore reçu aucune récompense, même s'il a déjà fait des achats chez vous, et Customer Total Spent part de zéro. Les deux examinent le client avant la commande en cours. Un client sans palier ne réussit jamais une vérification Tier Level — pas même « is not ». Voir Paliers pour la façon dont les dépenses sont comptées.
Actions¶
Les actions sont ce que le workflow fait réellement.
| Action | Ce qu'elle fait |
|---|---|
| Issue Credit | Ajoute un crédit boutique au solde de récompenses du client. Choisissez Fixed amount ou % of order, et si vous voulez Boost by customer tier. Sous More options : un maximum credit cap, la date d'expiration du crédit et une note. |
| Issue Cashback | Rend un pourcentage de la commande sous forme de crédit boutique. Définissez le percentage et un maximum facultatif. Le calcul part des articles après remises ; vous pouvez y ajouter la livraison et les taxes. Sous More options : un montant minimum de commande et une note. |
| Send Message | Envoie un message au client par e-mail, SMS ou sous forme d'Klaviyo event. Pour l'e-mail, partez d'un modèle — Credit earned, Tier changed, Credit expiring, Birthday reward, un modèle que vous avez enregistré ou un modèle vierge — et modifiez-le librement. Voir Envoyer un message ci-dessous. |
| Add Customer Tag | Ajoute un ou plusieurs tags au client dans Shopify. |
| Remove Customer Tag | Retire un ou plusieurs tags du client. |
| Add Order Tag / Note | Ajoute des tags à la commande et une ligne à sa note dans Shopify, afin que votre équipe voie ce que le workflow a fait lorsqu'elle consulte la commande. Déclencheurs de commande uniquement. Voir Marquer la commande ci-dessous. |
| Reward Tiers | Additionne les achats du client sur une période donnée et calcule la récompense du palier atteint — un seul tableau au lieu d'un workflow par palier. N'émet aucun crédit boutique. Voir Récompenses par palier ci-dessous. |
| Reward Tiers Refund | Sous Refund Created : calcule l'effet du remboursement sur la récompense Reward Tiers de la commande remboursée — la récompense avant et après, et le montant retiré. Voir Remboursements et Reward Tiers ci-dessous. |
| Update Tier | Up one tier, Set to a specific tier ou Recalculate from spend. Voir Paliers. |
| Wait / Delay | Met le workflow en pause pendant un nombre de minutes, d'heures ou de jours avant l'exécution des étapes suivantes. Voir Récompenses différées avec Wait / Delay. |
Pour remplacer une action sélectionnée par une autre, cliquez sur Change en haut du panneau de configuration. Comme pour les déclencheurs, le changement efface les paramètres de l'étape.
Un canal par action
L'e-mail, le SMS et un événement Klaviyo sont chacun une action distincte. Pour joindre un client par e-mail et par SMS, ajoutez deux actions Send Message. Voir Envoyer un message pour les canaux, les variables et les tests.
Comment Issue Credit et Issue Cashback calculent le montant¶
- La base. Issue Credit avec Fixed amount verse ce montant par commande. Avec % of order — et pour Issue Cashback — la base est le sous-total de la commande : les articles après remises, avant livraison. Issue Cashback vous permet d'y ajouter : cliquez sur Change à côté de « Based on » et cochez + shipping et/ou + tax. Avec des prix taxes incluses, si + tax reste décochée, la part de taxe est retirée de la base.
- Le bonus de palier. Lorsque Boost by customer tier est activé (par défaut), le montant est multiplié par le multiplicateur du palier du client. Un client sans palier ne reçoit aucun bonus.
- Le plafond. Le crédit maximum (ou le cashback maximum) s'applique après le bonus, dans les deux modes — un palier à 2x ne peut donc jamais dépasser le plafond.
- Arrondi. Le résultat est arrondi au centime. Un montant nul n'émet rien.
Le Only for orders of at least d'Issue Cashback (sous More options) est vérifié sur la même base : ajouter la livraison ou la taxe à la base compte donc aussi pour le minimum.
Le palier utilisé pour le bonus est celui du client avant que cette commande soit comptée. Une commande qui fait monter le client dans un palier supérieur est récompensée au taux de l'ancien palier ; la commande suivante bénéficie du nouveau.
Credit expires (Issue Credit, sous More options) propose Store default et After N days. Aujourd'hui, Store default signifie que le crédit n'expire pas : il n'existe pas de paramètre d'expiration à l'échelle de la boutique. Choisissez After N days pour donner au crédit une date d'expiration. Issue Cashback n'a pas d'option d'expiration : le cashback n'expire donc pas. Voir la FAQ sur l'argent pour le fonctionnement de l'expiration.
Les récompenses s'accumulent sur le solde du client
Le crédit et le cashback sont ajoutés au solde de récompenses unique du client, qu'il dépense avec son code de récompenses. Voir Comment les clients utilisent leurs récompenses.
Récompenses différées avec Wait / Delay¶
L'action Wait / Delay retient les étapes qui la suivent jusqu'à ce qu'un délai donné soit écoulé. Saisissez un nombre et choisissez Minutes, Hours ou Days ; une nouvelle étape démarre à un jour.
Elle est pratique pour retenir une récompense jusqu'à la fin de votre délai de remboursement. Par exemple : Order Complete → Wait / Delay 14 days → Issue Cashback.
Ce qui se passe à la fin de l'attente :
- Les étapes se poursuivent comme la commande était au moment où elle a été passée. La récompense est calculée à partir de la commande telle qu'elle était au départ : un remboursement partiel pendant l'attente ne la réduit pas, et un crédit qui n'a jamais été émis ne peut pas être récupéré.
- Un remboursement total annule la récompense. Si la commande a été entièrement remboursée d'ici là, les étapes restantes ne s'exécutent pas : ni crédit, ni message.
- Un workflow supprimé, ou des commandes en attente que vous avez annulées, ne se poursuivent pas.
- Désactiver le workflow n'arrête pas les commandes en attente. Une exécution suspendue se termine même si le workflow est désormais inactif, sauf si vous l'annulez — voir Désactiver un workflow avec des commandes en cours. Les limites de dépenses s'appliquent toujours au moment où le crédit est émis.
- Si Gift Card Hero ne peut pas vérifier la commande auprès de Shopify à ce moment-là, les étapes se poursuivent plutôt que d'abandonner une récompense.
Les reprises s'exécutent selon un planning, donc les étapes peuvent démarrer un peu après l'échéance. Le workflow compte comme une seule exécution, quel que soit le nombre d'attentes. Dans Test workflow, une étape Wait / Delay n'attend pas réellement : le test indique combien de temps elle ferait une pause, puis continue.
Voir la FAQ sur l'argent pour l'interaction entre remboursements et récupération.
Marquer la commande avec Add Order Tag / Note¶
Add Order Tag / Note écrit sur la commande qui a déclenché le workflow, afin que la personne qui l'ouvre dans Shopify, ou qui la recherche à la caisse, voie ce qui s'est passé. Remplissez l'un des champs ou les deux :
- Tags to add — par exemple
wine-reward-70. Les tags déjà présents sur la commande sont conservés. Shopify accepte jusqu'à 40 caractères par tag ; un tag plus long est raccourci à 40. - Note line — par exemple
Wine reward $70 - NOT REDEEMED ({{ order.name }}). Elle est ajoutée sous la note existante de la commande, comme une nouvelle ligne ; la note déjà présente n'est jamais remplacée.
Les deux champs peuvent utiliser les mêmes variables qu'un message : {{ order.name }} est la plus courante. Cliquez sur Insert variable pour en ajouter une à la ligne de note.
Quelques points à connaître :
- Chaque ligne n'est ajoutée qu'une fois. Si la note de la commande contient déjà cette ligne exacte — parce que la même commande a été traitée à nouveau, ou qu'un autre workflow a écrit les mêmes mots —, elle n'est pas ajoutée une seconde fois.
- Les remboursements marquent la commande d'origine. Sous Refund Created, l'étape ajoute des tags et des notes à la commande remboursée. Par exemple, un workflow Refund Created réglé sur Full refund only, avec une condition Order contains product pour votre produit de récompense, peut ajouter
wine-reward-voidet la ligneWine reward VOID ({{ order.name }}); un second, réglé sur Partial refund only, peut ajouterwine-reward-checkpour que l'équipe vérifie la récompense à la main. - Cela fonctionne après une attente et dans les branches. Une étape placée après Wait / Delay, ou sur la branche YES ou NO d'une condition, marque toujours la même commande.
- Test workflow affiche les tags et la ligne de note qu'il écrirait (avec
#1001comme numéro de commande d'exemple), sans toucher à aucune commande.
Récompenses par palier avec Reward Tiers¶
Reward Tiers verse une récompense selon le montant dépensé par un client, et compte les achats sur une période donnée comme un seul. Ainsi, fractionner un achat de 600 $ en quatre commandes de 150 $ rapporte la même chose qu'une seule commande de 600 $, et non quatre fois la récompense de 150 $.

Configurez-la dans l'étape :
- Count — ce qu'ajoute chaque commande : The trigger's products (sous Product Purchase ou Collection Purchase, les lignes retenues par le déclencheur), Chosen products, Products from collections ou The whole order (son sous-total). Les prix des lignes comptent après remises.
- Add up within — la période, en heures (24 par défaut, jusqu'à 720).
- Tiers — des lignes From et Reward : à partir de chaque montant (inclus), les achats de la période rapportent cette récompense. Par exemple : dès 150 $ → 40 $, dès 200 $ → 50 $, dès 300 $ → 65 $ … dès 1 000 $ → 300 $. Cliquez sur Add tier pour une autre ligne (jusqu'à 50). Les lignes sont triées par montant ; les montants et les récompenses doivent être supérieurs à zéro, deux lignes ne peuvent pas commencer au même montant, et un palier supérieur ne peut pas rapporter moins qu'un palier inférieur.
- Add up purchases of — le compte client (par défaut) ou l'adresse e-mail de la commande.
Fonctionnement de la période : la première commande admissible du client l'ouvre, et chaque commande jusqu'à la fin de la durée de la période s'y ajoute. Une commande postérieure ouvre une nouvelle période. Chaque commande rapporte la récompense du palier atteint par la période, moins ce que les commandes précédentes de la période ont déjà reçu :
| Commande | Total de la période | Récompense du palier | Gain de cette commande |
|---|---|---|---|
| $150 | $150 | $40 | $40 |
| $150 | $300 | $65 | $25 |
| $150 | $450 | $80 | $15 |
| $150 | $600 | $125 | $45 |
$125 au total, soit la même chose qu'une seule commande de 600 $.
Après l'étape, utilisez ces variables dans un message ou une note de commande : {{ reward.delta }} (ce que cette commande rapporte), {{ reward.amount }} (la récompense du palier atteint par la période) et {{ reward.window_total }} (les achats de la période). Placez le message et le marquage de commande sur la branche YES d'une condition Tier Reward Earned, afin qu'une commande qui n'ajoute rien de nouveau n'envoie aucun e-mail :
- Déclencheur : Product Purchase — Gift Card - Dollar Value
- Reward Tiers — compter les produits du déclencheur, sur 24 heures, avec votre tableau
- Condition : Tier Reward Earned — YES : Send Message (« Votre récompense vin : {{ reward.delta }} ») et Add Order Tag / Note (
Wine reward +{{ reward.delta }} ({{ order.name }}))
Quelques points à connaître :
- Aucun crédit boutique n'est émis. L'étape ne fait que calculer les montants ; la manière de remettre la récompense relève des étapes suivantes.
- Traiter à nouveau une commande ne change rien. Un événement relancé ou dupliqué retrouve la commande déjà comptée et donne le même résultat : rien n'est gagné deux fois, et le message n'est pas envoyé deux fois.
- Les remboursements réduisent la récompense. Lorsque des produits comptés sont remboursés, le montant remboursé est retiré du total de la période et la récompense est recalculée à partir de ce qui reste. Voir Remboursements et Reward Tiers.
- Une étape Reward Tiers par workflow. Elle nécessite une commande ; elle n'est donc pas proposée sous Customer Signup, Customer Birthday ou Refund Created (utilisez Reward Tiers Refund dans ce cas).
- Test workflow montre ce que la commande compterait, le total de la période, le palier et le complément, pour un client existant y compris ses vraies commandes de la période en cours, sans rien enregistrer.
Remboursements et Reward Tiers¶
La récompense correspond au palier atteint par les achats de la période : un remboursement qui réduit les achats réduit donc aussi la récompense. Cela se fait automatiquement pour chaque remboursement, sans rien à construire :
- Un remboursement partiel ramène la récompense au palier de ce qui reste. Une commande de 300 $ avait rapporté 65 $ ; si vous remboursez 150 $ et que la période ne contient plus que 150 $, soit le palier de 40 $, 25 $ de récompense sont retirés.
- Un remboursement total de l'unique commande de la période retire toute la récompense (65 $ → 0 $).
- Le remboursement d'une commande parmi plusieurs recalcule toute la période : deux commandes de 150 $ ont rapporté 40 $ et 25 $ ; si vous remboursez la seconde, la période revient à 150 $, soit 40 $, donc ses 25 $ sont retirés.
- La commande suivante de la période part de la récompense réduite. Remboursez 150 $ d'une commande de 300 $, puis achetez 150 $ de plus dans la période : la période est de nouveau à 300 $ et cette commande rapporte 25 $.
- Seules les lignes comptées comptent. Un remboursement de produits non comptés par l'étape (le vin, d'autres produits), des frais de livraison ou un montant sans ligne d'article ne change rien.
- Un remboursement n'est appliqué qu'une fois. Si Shopify envoie deux fois le même remboursement, rien ne change la seconde fois.
- La période conserve son début : rembourser sa première commande ne la déplace pas.
Pour en informer le client ou votre équipe, ajoutez un workflow Refund Created avec une étape Reward Tiers Refund. Elle lit l'effet du remboursement :
- Reward Tiers workflow : le workflow dont l'étape Reward Tiers a compté la commande. Si votre boutique n'en a qu'un, il est choisi automatiquement ; s'il y en a plusieurs, choisissez-en un. Le workflow ne peut pas être activé tant que vous ne l'avez pas fait.
- Après l'étape :
{{ reward.previous_amount }}(la récompense de la période avant le remboursement),{{ reward.amount }}(après),{{ reward.reversed }}(le montant retiré) et{{ reward.window_total }}(les achats restants dans la période), ainsi que leurs versions_valuesous forme de nombres simples. - Placez le marquage de commande, et un message si vous le souhaitez, sur la branche YES de Tier Reward Reduced. Un remboursement qui laisse la période au même palier ne retire rien et prend la branche NO.
Par exemple :
- Déclencheur : Refund Created — Any refund
- Reward Tiers Refund — Gift for Gifting
- Condition : Tier Reward Reduced — YES : Add Order Tag / Note (
wine-reward-reduced,Wine reward {{ reward.previous_amount }} → {{ reward.amount }} ({{ order.name }}))
Test workflow rembourse la commande d'exemple comme si le workflow Reward Tiers l'avait comptée seule : en totalité, ou pour moitié sous Partial refund only. Ajoutez à l'exemple les produits que l'étape Reward Tiers compte, avec leurs prix.
Une récompense déjà remise n'est pas reprise
Gift Card Hero ne sait pas si la récompense a déjà été remise, par exemple si le vin a été retiré à la caisse. La nouvelle récompense correspond à la valeur actuelle des achats ; si l'ancienne a déjà été utilisée, tranchez à la caisse à l'aide de la note de commande. Et si, après un tel remboursement, le client rachète dans la même période, la nouvelle commande gagne son complément à partir de la récompense réduite : il peut donc recevoir davantage que ce qu'il a réellement obtenu. Avec une période de 24 heures, cela reste rare, mais c'est bon à savoir.
Envoyer un message¶
L'action Send Message atteint le client sur un seul canal à la fois : e-mail, SMS ou un Klaviyo event. Choisissez le canal, rédigez (ou choisissez) le message, et le reste du workflow continue de s'exécuter quoi qu'il arrive au message. Un message est un effet secondaire, pas une barrière.

Les messages in-app ne sont pas disponibles
Il n'existe pas de canal de notification in-app. Une étape héritée d'une version antérieure, réglée sur In-app notification, n'a jamais rien envoyé ; l'éditeur affiche une telle étape comme Email. Choisissez un canal pour que l'envoi soit réel.
Choisir un canal¶
| Canal | Ce qu'il faut |
|---|---|
| Envoie depuis Gift Card Hero email par défaut, ou depuis votre propre serveur de messagerie une fois que vous l'avez choisi comme Send from : voir Livraison ci-dessous. Rien à connecter pour utiliser Gift Card Hero email. | |
| SMS | Un fournisseur SMS connecté sous Settings → Integrations (Onfon Media actuellement). |
| Klaviyo event | Klaviyo connecté sous Settings → Integrations. Gift Card Hero envoie l'événement ; un Flow que vous créez dans Klaviyo envoie le message réel. |
Voir Intégrations pour connecter l'un de ces canaux.
Un workflow ne peut pas être activé avec un canal qui n'est pas prêt
Activate est refusé, sur l'étape Send Message elle-même, lorsque cette étape envoie un SMS sans fournisseur connecté, un événement Klaviyo sans Klaviyo connecté, ou un e-mail via un serveur de messagerie non configuré. Enregistrer comme Draft est toujours autorisé, afin que vous puissiez construire le reste du workflow d'abord. Si vous choisissez un canal non connecté, le panneau affiche un avertissement avec un bouton qui ouvre Settings → Integrations dans un nouvel onglet.
Rédiger le message¶
- Email — partez d'un modèle et modifiez librement l'objet, le message et le bouton. Voir E-mail : modèles et modification ci-dessous.
- SMS — un champ Text message, prérempli avec un court texte intégré la première fois que vous passez à SMS.
- Klaviyo event — un Klaviyo event name (facultatif ; voir ci-dessous) et une liste en lecture seule des propriétés que transporte l'événement. Il n'y a pas de texte de message à rédiger : votre Flow Klaviyo compose ce que voit le client.
Pour Email et SMS, cliquez sur Insert variable pour placer une variable au curseur au lieu de la taper. Un Preview en direct sous le champ affiche le message rendu (objet, texte et bouton pour l'e-mail ; texte et nombre de segments pour le SMS ; nom de l'événement et ses propriétés pour Klaviyo), mis à jour peu après que vous cessez de taper.
E-mail : modèles et modification¶
Chaque champ vous appartient, quel que soit le point de départ : il n'existe pas d'état « intégré » en lecture seule dès que vous avez saisi quoi que ce soit.

Le sélecteur Template liste les quatre modèles intégrés : Credit earned, Tier changed, Credit expiring, Birthday reward. Suivent Your templates, ceux que vous avez enregistrés auparavant, puis Blank. Manage templates ouvre E-mails Loyalty dans un nouvel onglet.
Les noms des modèles intégrés sont des textes de départ, pas des déclencheurs
Un workflow n'envoie le texte Tier changed ou Credit expiring que si votre déclencheur et vos étapes le provoquent ; aucun déclencheur ne se déclenche sur un changement de palier ou sur un crédit qui expire. Pour annoncer un nouveau palier, par exemple, placez une action Send Message juste après une étape Update Tier. Gift Card Hero envoie aussi son propre rappel avant l'expiration du crédit : voir la FAQ sur l'argent.
- Choisissez un modèle tant que Subject et Message sont intacts, et il les remplit immédiatement.
- Si vous choisissez un modèle après avoir rédigé votre propre texte, Gift Card Hero vérifie d'abord : « Replace your subject and message with the [template] template? » — Replace remplit les champs, Cancel conserve votre texte tel quel.
La première modification d'un objet, d'un message ou d'un bouton intégré copie le texte de ce modèle dans l'étape. La saisie ne touche jamais au modèle intégré lui-même, ni aux autres étapes qui l'utilisent. Dès lors, Started from [name] · edited apparaît sous le sélecteur Template, indiquant que cette étape contient désormais sa propre copie. Si elle partait d'un modèle enregistré depuis supprimé, elle affiche plutôt Started from a deleted template.
Cliquez sur + Add a button pour ajouter un bouton sous le message : un Button label (par exemple « Shop now ») et un Button link, qui doit être une adresse https:// complète. Liquid fonctionne aussi dans ce champ : https://{{ shop.domain }} envoie les clients vers votre boutique en ligne. Laissez le libellé vide et il n'y a pas de bouton. Les quatre modèles intégrés comportent déjà un bouton Shop now vers votre boutique.
Cliquez sur View email pour voir le message exactement tel que le reçoit le client : le nom de votre boutique en haut, le message, le bouton s'il y en a un, et un pied de page indiquant le nom et l'e-mail de votre boutique.

Save as template enregistre l'objet, le message et le bouton actuels de l'étape (ainsi que leurs traductions) sous un nom de votre choix, afin que le workflow suivant parte de ce modèle au lieu d'une page vierge. Vous gérez les modèles enregistrés depuis E-mails Loyalty. Une étape qui part d'un modèle enregistré conserve sa propre copie : modifier ou supprimer ensuite le modèle enregistré ne change jamais un e-mail déjà présent dans un workflow.
Langues¶
Si votre boutique publie plusieurs langues dans Shopify, une étape e-mail ou SMS affiche un sélecteur Language au-dessus du texte. La première entrée est la langue principale de votre boutique, marquée (default) ; chaque autre langue publiée indique l'avancement de sa traduction : translated, incomplete ou uses default.

Choisissez une langue pour rédiger son objet, son message et son libellé de bouton (ou son texte SMS). Un champ vide affiche en grisé le texte par défaut, avec Falls back to English. Le lien du bouton est le même dans toutes les langues.
Lorsque le message part, Gift Card Hero utilise la langue du client telle que la connaît Shopify. Il cherche d'abord une correspondance exacte (pt-BR), puis la langue seule (pt), et sinon envoie la langue par défaut. Un e-mail n'est jamais traduit à moitié : une traduction n'est utilisée que si elle comporte à la fois un objet et un message ; sinon, tout l'e-mail part dans la langue par défaut. L'éditeur l'indique sous le champ. Les événements Klaviyo n'ont pas de traduction : votre Flow gère la langue.
Variables¶
| Variable | Ce qu'elle contient | Exemple |
|---|---|---|
customer.first_name |
Le prénom du client | Jane |
customer.last_name |
Le nom de famille du client | Doe |
customer.name |
Un nom pour saluer : le prénom, ou « there » s'il est inconnu | Jane |
customer.email |
L'adresse e-mail du client | jane.doe@example.com |
customer.phone |
Le numéro de téléphone du client, au format international | +254712345678 |
customer.locale |
La langue du client telle que la publie Shopify ; vide si inconnue | fr |
reward.amount |
Crédit boutique émis plus tôt dans cette exécution par ce workflow, dans le format monétaire de votre boutique ; vide sinon. Après une étape Reward Tiers : la récompense du palier atteint par les achats. Après une étape Reward Tiers Refund : la récompense restant après le remboursement | $10.00 |
reward.amount_value |
Le même montant sous forme de nombre simple | 10 |
reward.delta |
Reward Tiers : ce que cette commande a rapporté, soit la récompense du palier moins ce que les commandes précédentes de la période ont reçu (workflows Reward Tiers uniquement) | $10.00 |
reward.delta_value |
Le même montant sous forme de nombre simple (workflows Reward Tiers uniquement) | 10 |
reward.window_total |
Reward Tiers : le total des achats du client sur la période, cette commande incluse ; après un remboursement, ce qui reste (workflows Reward Tiers uniquement) | $150.00 |
reward.window_total_value |
Le même total sous forme de nombre simple (workflows Reward Tiers uniquement) | 150 |
reward.previous_amount |
Reward Tiers Refund : la récompense de la période avant le remboursement (workflows de remboursement avec une étape Reward Tiers Refund uniquement) | $25.00 |
reward.previous_amount_value |
Le même montant sous forme de nombre simple (Reward Tiers Refund uniquement) | 25 |
reward.reversed |
Reward Tiers Refund : le montant retiré de la récompense par le remboursement, soit la récompense avant moins la récompense après (Reward Tiers Refund uniquement) | $15.00 |
reward.reversed_value |
Le même montant sous forme de nombre simple (Reward Tiers Refund uniquement) | 15 |
wallet.balance |
Le solde de crédit boutique du client, dans le format monétaire de votre boutique | $25.00 |
wallet.balance_value |
Le solde sous forme de nombre simple | 25 |
wallet.currency |
Devise du solde | USD |
tier.name |
Le palier de fidélité du client ; vide sans palier | Silver |
tier.next_name |
Le palier immédiatement supérieur ; vide au palier le plus élevé ou sans paliers | Gold |
tier.spend_to_next |
Ce que le client doit encore dépenser pour atteindre le palier suivant, dans le format monétaire de votre boutique | $150.00 |
tier.spend_to_next_value |
Le même montant sous forme de nombre simple | 150 |
order.name |
Le numéro de commande (déclencheurs de commande uniquement) | #1001 |
order.total |
Le total de la commande, dans le format monétaire de votre boutique (déclencheurs de commande uniquement) | $120.00 |
order.total_value |
Le total de la commande sous forme de nombre simple (déclencheurs de commande uniquement) | 120 |
trigger.matched_amount |
Le total des produits ou articles de collection retenus par le déclencheur, après remises, dans le format monétaire de votre boutique (déclencheurs Product / Collection Purchase uniquement) | $100.00 |
trigger.matched_amount_value |
Le même montant sous forme de nombre simple (déclencheurs Product / Collection Purchase uniquement) | 100 |
workflow.name |
Le nom de ce workflow | Your workflow |
shop.name |
Le nom de votre boutique | Your Store |
shop.domain |
Le domaine de votre boutique en ligne | your-store.com |
shop.email |
L'e-mail de contact de votre boutique | hello@your-store.com |
Quatre variables d'avant ces messages, utilisant l'ancien format Liquid, fonctionnent encore dans tout message que vous n'avez pas réécrit : {{amount}}, {{balance}}, {{customer_name}} et {{store_name}}. Ce sont les mêmes valeurs que reward.amount, wallet.balance, customer.name et shop.name. Rédigez les nouveaux messages avec le tableau ci-dessus.
Bases de Liquid¶
Un message est un petit modèle Liquid. Deux éléments suffisent presque toujours :
- Afficher une variable avec des doubles accolades :
Bonjour {{ customer.first_name }}, votre solde est de {{ wallet.balance }}. - N'afficher quelque chose que parfois avec
{% if %}…{% endif %}:
{% if reward.amount_value > 0 %}You also earned a reward on this order!{% endif %}
Rien entre les balises n'est affiché lorsque la condition est fausse : ni ligne vide, ni ponctuation résiduelle.
Un message contenant une erreur Liquid ne peut pas être enregistré : l'éditeur désigne le champ et indique le problème.
Longueur et segments SMS¶
Un SMS est facturé par segment : un message en langage courant tient 160 caractères dans un segment, puis 153 caractères par segment suivant. Un seul caractère hors de l'alphabet latin de base (un emoji, un guillemet courbe, de nombreuses lettres accentuées) fait basculer tout le message dans un mode qui ne tient que 70 caractères par segment (67 après le premier). Un caractère isolé peut donc doubler le coût d'un message. Le compteur sous le champ Text message indique la longueur de ce que vous avez tapé, par rapport à la limite de 1 000 caractères. Le nombre de segments est affiché dans l'aperçu : il compte le texte rendu, c'est-à-dire après remplacement des variables par des valeurs d'exemple, et non les balises {{ }}. Un nom de client ou un montant long peut donc quand même ajouter un segment.
Livraison¶
Chaque canal se termine par un groupe Delivery en bas du panneau : par où part le message, et qui a le droit de le recevoir.

Send from (e-mail uniquement) est le canal par lequel part l'e-mail :
| Option | Expédié comme |
|---|---|
| Gift Card Hero email | <Your store name> <giftcardhero@syncube.email>, les réponses allant à l'e-mail de votre boutique. Toujours disponible. |
| Your mail server (SMTP) | L'adresse configurée pour lui sous Settings → Integrations. Affichée « — not set up » et désactivée tant qu'aucun serveur de messagerie n'est connecté là-bas. |
Manage senders ouvre Settings → Integrations dans un nouvel onglet. Une étape enregistrée avant l'existence de ce choix suit le paramètre e-mail de votre boutique : voir Intégrations. Ce paramètre reste en vigueur jusqu'à ce que vous choisissiez un expéditeur pour cette étape ici.
Si le serveur de messagerie qu'une étape est configurée pour utiliser cesse de fonctionner, l'e-mail part quand même, depuis Gift Card Hero email, et le résultat de l'étape l'indique. Un Send test via un serveur de messagerie défaillant échoue directement au lieu de basculer, avec le message « Your mail server isn't set up », afin que vous le découvriez avant un client. Un workflow ne peut pas être activé tant que le serveur de messagerie choisi pour une étape e-mail n'est pas configuré : voir l'avertissement ci-dessus.
Pour SMS et Klaviyo, ce groupe affiche l'état de la connexion à la place de Send from : si une passerelle ou Klaviyo est connecté.
Chaque canal dispose aussi de sa propre case de consentement ici : « Only send to customers subscribed to SMS marketing » pour le SMS, ou « Only send to customers subscribed to email marketing » pour l'e-mail et Klaviyo. Elle lit le consentement marketing du client exactement tel que Shopify l'enregistre pour ce canal.
Elle est activée par défaut pour le SMS et désactivée pour l'e-mail et Klaviyo. Changer de canal rétablit cette valeur par défaut, même si vous l'aviez modifiée auparavant. Désactivez-la pour le SMS seulement si vous êtes certain que chaque destinataire a accepté de recevoir des textos ; les messages de récompense transactionnels coûtent de toute façon un segment.
L'événement Klaviyo et la construction du Flow¶
Une étape Klaviyo envoie un événement (metric), pas un message : votre compte Klaviyo transforme cet événement en ce que votre Flow envoie. Le nom de l'événement vaut par défaut Loyalty: <workflow name>. Saisissez le vôtre (128 caractères maximum) pour cibler un Flow précis, ce qui est utile lorsque plusieurs étapes Send Message de votre compte alimentent Klaviyo.
L'événement transporte chaque variable du tableau ci-dessus (sauf les quatre variables héritées) comme propriété, ainsi que workflow_id, step_id et is_test. Il est rattaché au profil du client par son e-mail : un client sans adresse e-mail enregistrée ne peut pas recevoir d'événement Klaviyo.
Créez dans Klaviyo un Flow déclenché par cette métrique, de la même façon que pour les rappels ou notifications de rachat : un événement sans Flow derrière lui atteint Klaviyo, puis ne fait rien.
Envoyer un test¶
Deux éléments distincts envoient un test, à des fins différentes :
- Test workflow, dans la barre d'outils, exécute tout le workflow sous forme d'essai à blanc. Pour une étape Send Message, il affiche le sujet et le texte rendus (ou l'événement Klaviyo et ses propriétés) ainsi que le destinataire masqué, et ne contacte aucun fournisseur d'e-mail, de SMS ou de Klaviyo.
- Send test, dans l'éditeur de l'action Send Message, envoie un vrai message, avec des valeurs d'exemple pour le client, la récompense et le portefeuille, à une adresse e-mail ou un numéro de téléphone que vous saisissez. Pour l'e-mail, le champ est prérempli avec l'adresse de votre boutique. Un test SMS est un message réel et facturé. Un test e-mail part toujours par l'expéditeur de l'étape et ne bascule jamais vers un autre : si cet expéditeur n'est pas configuré, le test échoue directement avec « Your mail server isn't set up » ; s'il réussit, il confirme à la fois l'adresse et l'expéditeur utilisé. Un test Klaviyo envoie un vrai événement, portant
is_test: true, à l'e-mail que vous saisissez, afin que vous puissiez finir de construire votre Flow à partir de lui. Send test est désactivé tant que le canal testé n'est pas connecté. Si l'étape comporte des traductions, le test part dans la langue actuellement sélectionnée.
Quand un message n'est pas envoyé¶
Une étape Send Message n'arrête jamais le reste du workflow : quoi qu'il arrive au message, les étapes suivantes s'exécutent quand même. Il est aussi envoyé au plus une fois par étape et par commande ou événement : une tâche relancée ou un webhook Shopify répété n'envoie jamais deux fois le même message.
Lorsqu'un message ne part pas, Test workflow l'indique directement sur cette étape. Pour les exécutions réelles, la même raison est enregistrée pour l'étape, mais l'administration ne liste pas les exécutions individuelles : utilisez Test workflow avec le même client pour la reproduire.
| Ce qu'il indique | Ce qui s'est passé |
|---|---|
| no email address is known for this customer | Le canal est e-mail ou Klaviyo, et le client n'a pas d'adresse e-mail enregistrée. |
| no usable phone number is known for this customer | Le canal est SMS, et aucun numéro de téléphone utilisable n'a pu être trouvé pour le client. |
| the customer is not subscribed to SMS marketing / email marketing | La case de consentement de Livraison est cochée sur cette étape, et Shopify n'indique pas que le client est abonné sur ce canal. |
| no SMS gateway is connected (Settings → Integrations) | Le fournisseur SMS n'est pas connecté, ou a été déconnecté après l'activation de cette étape. |
| Klaviyo is not connected (Settings → Integrations) | Idem, pour une étape Klaviyo. |
| the message shows the reward amount, but this run issued no store credit | Le message affiche {{ reward.amount }} (ou l'ancien {{amount}}, ou reward.delta / reward.window_total / reward.previous_amount / reward.reversed) à un endroit, et cette exécution n'a ajouté aucun crédit : ainsi, un client n'est jamais informé qu'il a gagné « $0.00 ». Tester reward.amount_value dans un {% if %} sans afficher le montant (comme dans l'exemple des Bases de Liquid) évite ce cas. Après une étape Reward Tiers, cela ne s'applique jamais : branchez-vous sur Tier Reward Earned à la place ; après une étape Reward Tiers Refund, sur Tier Reward Reduced. |
| already sent for this event by an earlier attempt | Une relance ou un webhook en double a tenté d'envoyer à nouveau le message de cette étape. |
Un message peut aussi échouer : le fournisseur l'a rejeté, ou le modèle n'a pas pu être rendu. Le résultat de l'étape affiche alors l'erreur renvoyée à Gift Card Hero.
Exemple de ramification¶
Un schéma courant récompense plus généreusement les grosses commandes :
- Déclencheur : Order Complete
- Ajoutez une condition : Order Amount is more than
100 - Sur la branche YES, ajoutez Issue Cashback à
10% - Sur la branche NO, ajoutez Issue Cashback à
5%
Lorsque vous insérez une condition au milieu d'une chaîne existante, les étapes qui venaient après elle passent automatiquement sur la branche YES.
Validation et enregistrement¶
Le bouton Save reste désactivé tant que le workflow n'est pas valide : il faut un nom, un déclencheur et au moins une étape.
Lorsque vous enregistrez, Gift Card Hero vérifie aussi les paramètres de chaque étape. Si un champ obligatoire manque ou si un nombre est hors plage (par exemple, un pourcentage doit être compris entre 0,1 et 100), l'éditeur affiche une bannière d'erreur et met en évidence le champ concerné. Corrigez-le puis enregistrez à nouveau. Il en va de même pour une plage de montants de déclencheur dont la borne supérieure n'est pas supérieure à la borne inférieure (aucune commande ne pourrait jamais correspondre), pour un tableau Reward Tiers comportant une ligne vide, nulle, répétée ou décroissante, et pour une planification qui se termine avant de commencer.
La première fois que vous enregistrez un nouveau workflow, il devient un Draft. Les modifications d'un workflow déjà Active prennent effet dès que vous enregistrez.
La barre d'outils¶

À gauche : le nom du workflow, puis Schedule, Budget, Advertise, et le badge de statut (plus Unsaved dès que vous avez des modifications non enregistrées).
- Schedule: Always on — vous pouvez limiter le workflow à une période. Choisissez une date et une heure de début et de fin (ou un préréglage comme Next 30 days) ; laissez la fin vide pour qu'il n'y ait pas de fin, ou cliquez sur Always on pour effacer la planification. Le workflow ne récompense un événement que si celui-ci s'est produit dans la période : une commande passée avant la date de fin reste donc récompensée même si elle est traitée un peu plus tard. La fin doit être postérieure au début. Hors de la période, le badge indique Scheduled (pas encore commencé) ou Ended.
- Budget: No cap — un Monthly budget cap pour ce workflow. Dès que le crédit qu'il a émis dans le mois civil (UTC) dépasserait le plafond, le workflow cesse d'émettre du crédit et est mis en pause. Vide signifie pas de plafond. Un plafond à l'échelle de la boutique et un plafond par client se définissent sur la page Settings de Loyalty : voir la FAQ sur l'argent.
- Advertise — créer ou relier une promotion en vitrine ; voir Faire la promotion de la récompense d'un workflow. Le bouton est désactivé tant que le workflow n'est pas enregistré.
À droite, une fois le workflow enregistré au moins une fois :
- Results on canvas — affiche les nombres d'exécutions sur chaque étape du canevas.
- Test workflow — voir Test workflow (essai à blanc).
- Performance — voir Performance.
- Delete (l'icône de corbeille) — voir Suppression.
- Activate / Deactivate — voir Activer, désactiver et statut.
- Save — toujours affiché.
Test workflow (essai à blanc)¶
Avant d'activer un workflow, ou chaque fois que vous modifiez un workflow en production, simulez-le. Rien n'est émis et aucun message n'est envoyé, ni par e-mail, ni par SMS, ni vers Klaviyo. Le test exécute le canevas exactement tel qu'il est maintenant, y compris les modifications que vous n'avez pas encore enregistrées. Test workflow apparaît dès que le workflow a été enregistré pour la première fois.
- Cliquez sur Test workflow dans la barre d'outils.
- Choisissez en tant que qui tester. New customer est la valeur par défaut : un acheteur qui n'a jamais commandé, sans tags, sans palier et sans dépenses. Choisissez Existing customer pour saisir un Email ; Gift Card Hero recherche le client, affiche un badge vert avec son nom, son palier et son nombre de commandes, puis remplit ses tags, son palier et ses dépenses réels.
- Remplissez la commande. La boîte de dialogue n'affiche que les champs que votre workflow lit réellement. Une ligne en haut, « This workflow checks… », les énumère. Subtotal est toujours présent pour les déclencheurs de commande ; les autres (Customer tags, Tier, Lifetime spent, Treat as this customer's first order, Order total, Discount, Products) n'apparaissent que lorsqu'une condition en a besoin. Tout le reste se trouve sous More options. Lorsqu'un déclencheur ou une étape Reward Tiers travaille avec des montants de produits, donnez aussi à chaque produit d'exemple un Price.
- Cliquez sur Run test dans la barre de titre de la boîte de dialogue.

Le résultat liste les vérifications effectuées par le workflow (et si chacune a pris la branche YES ou NO), puis ce que chaque action ferait. Une étape Send Message indique ce qu'elle enverrait et à qui (masqué) ; voir Quand un message n'est pas envoyé pour le libellé lorsqu'il ne partirait pas. Un encadré vert en bas indique le crédit que le client aurait reçu ; s'il n'y en a aucun, il affiche No credit would be issued et la raison. Si le filtre propre au déclencheur ne correspondrait pas (par exemple, la commande est en dessous de votre montant minimum), le test affiche Workflow would not run et la raison.
Simuler des clients « comme si »
Modifiez les champs Tier, Treat as this customer's first order ou Lifetime spent pour tester comme si un client se trouvait dans un certain palier, passait sa première commande ou avait un certain niveau de dépenses, sans avoir besoin d'un vrai client qui correspond déjà.
Un test respecte aussi vos limites de dépenses : si un plafond bloquerait la récompense, le test indique qu'il l'a bloquée.
Activer, désactiver et statut¶
Un workflow a l'un des trois statuts que vous choisissez, affiché sous forme de badge :
- Draft — nouveau et pas encore en cours d'exécution.
- Active — en service et exécuté sur de vrais événements.
- Inactive — enregistré mais en pause.
Deux autres libellés sont déduits de la planification et des limites : Scheduled et Ended (voir La barre d'outils), ainsi que Paused by guardrail dans la liste des workflows lorsqu'un plafond de budget a arrêté le workflow. Une pause par garde-fou apparaît comme Inactive dans l'éditeur, avec une bannière Paused by guardrail qui explique quel plafond a été atteint et propose un bouton Reactivate ; réactiver ne relève pas le plafond, donc le workflow peut se mettre à nouveau en pause.
Cliquez sur Activate pour activer un workflow, ou sur Deactivate pour le mettre en pause. Enregistrez d'abord vos modifications : Activate agit sur le workflow enregistré. Activer et désactiver peut prendre un moment, car Gift Card Hero se connecte (ou se déconnecte) à l'événement Shopify sous-jacent en coulisses.
Activate est refusé, avec le problème affiché sur l'étape, lorsque :
- une étape a besoin de données que le déclencheur ne fournit pas (par exemple Add Order Tag / Note sous Customer Signup) ;
- une étape Reward Tiers Refund n'a aucun workflow Reward Tiers à lire, ou plusieurs sans qu'aucun ne soit choisi ;
- une étape Send Message utilise un canal ou un expéditeur qui n'est pas connecté (voir Envoyer un message).
Désactiver un workflow avec des commandes en cours¶
Une commande peut encore être en cours de traitement dans un workflow : en file d'attente, ou en attente à une étape Wait / Delay. Lorsque vous cliquez sur Deactivate et que certaines sont en attente, Gift Card Hero les liste (commande, client et « waiting N min » ou « continues in 3 days ») et demande :
- Turn off, finish these — la valeur par défaut. Les commandes listées reçoivent quand même les récompenses de ce workflow.
- Turn off and cancel these — ces commandes ne reçoivent jamais les récompenses de ce workflow. Cette action est irréversible.

Si vous avez choisi de les terminer, un workflow Inactive affiche une bannière tant qu'il en reste, avec Cancel them (après confirmation) et Refresh. Les commandes déjà traitées ne sont concernées dans aucun des deux cas.
Performance¶
Performance remplace le panneau de configuration par un résumé des résultats du workflow. Basculez entre 7d, 30d, 90d et All. Il affiche Runs (et combien ont exécuté une action), Customers rewarded, Net credit (émis, moins le crédit repris par les remboursements, moins le crédit expiré), Orders rewarded, et deux estimations : Credit spent (la part du crédit émis que les clients ont utilisée) et Revenue issu des commandes qui l'ont utilisé, ainsi qu'un graphique du nombre d'exécutions par jour. Si une limite de dépenses a bloqué des récompenses, une bannière l'indique, avec des détails et des liens vers les commandes concernées.

Results on canvas ajoute les nombres aux étapes elles-mêmes. Pour les chiffres de tous les workflows, voir Analyses Loyalty.
Suppression¶
L'icône de corbeille supprime le workflow définitivement après confirmation. S'il est actif, ses événements Shopify sous-jacents sont d'abord déconnectés. Les commandes encore en cours sont annulées : la confirmation indique combien. Une promotion liée au workflow devient un brouillon et n'apparaît plus, mais reste dans votre liste de promotions. Cette action est irréversible. Vous pouvez aussi sélectionner plusieurs workflows dans la liste Loyalty Workflows et utiliser Delete workflows.
Faire la promotion de la récompense d'un workflow¶
Créer un workflow ne le fait pas connaître automatiquement. Cliquez sur Advertise dans la barre d'outils (une fois le workflow enregistré et sans modifications non enregistrées) pour créer ou relier une promotion : une carte d'incitation en fenêtre contextuelle et/ou une bannière affichée sur votre vitrine, avec les chiffres de récompense tirés en direct du workflow. Seuls les workflows qui émettent du crédit ou du cashback peuvent être mis en avant. Voir Le widget Promotions.