Comprendre les conditions dans Shopify Flow

Une condition est une étape d’un flux de travail où une décision est prise sur la manière de procéder, en fonction du respect ou non d’un ensemble de critères. Chaque étape de condition a deux possibilités : Vrai, lorsque les critères ont été remplis, et Faux, lorsqu’ils ne l’ont pas été. Si vous ne définissez pas d’étape suivante pour l’une ou l’autre des possibilités en choisissant une autre condition ou action, l’exécution du flux de travail s’arrête.

Par exemple, si votre flux de travail est déclenché lorsqu’une commande est créée, une condition pourrait alors vérifier si un code de réduction AFFILIATE10 spécifique a été utilisé sur la commande. Si c’est le cas, l’option Vrai pourrait mener à une action qui envoie un e-mail à l’affilié pour l’informer que son code a été utilisé. Si ce n’est pas le cas, l’option Faux pourrait être vide, indiquant que rien d’autre ne se produit et que l’exécution du flux de travail se termine.

Un flux de travail peut comporter n’importe quel nombre de conditions, en fonction de sa complexité. Les conditions peuvent également être liées à d’autres conditions ou actions en fonction de ce que vous voulez que le flux de travail fasse. Les conditions peuvent être configurées pour se succéder (par exemple, si la condition A est vraie, alors vérifier la condition B ; si A est fausse, alors vérifier C), ou vous pouvez les configurer pour qu’elles se produisent simultanément dans le cadre de la même étape (par exemple, vérifier si A, B ou C est vraie).

Élaboration des conditions de votre flux de travail

Contrairement à un déclencheur ou à une action, que vous pouvez sélectionner dans une liste prédéfinie d’options disponibles dans Shopify Flow, les conditions sont élaborées à partir de zéro en sélectionnant des variables, des opérateurs logiques et des valeurs pour créer l’instruction conditionnelle :

  • Une variable est un paramètre fictif qui définit les données que la condition utilise. Par exemple, si une condition doit vérifier la présence d’un code de réduction spécifique sur une commande, la variable serait order.discountCode. Les variables utilisent la notation par points de la GraphQL Admin API.
  • Un opérateur logique indique comment le flux de travail doit déterminer si la condition est remplie. Les opérateurs logiques peuvent s’appliquer au niveau de la variable, ou lorsque plusieurs variables sont incluses dans les critères généraux de la condition :
    • Les options au niveau de la variable comprennent des opérateurs de niveau champ tels que Supérieur à ou Commence par, ou des opérateurs de liste tels que Au moins un(e) parmi ou Tous les éléments de.
    • Les options au niveau de la condition comprennent ET, ce qui signifie que toutes les variables doivent être vraies pour que la condition soit considérée comme globalement vraie, ou OU, ce qui signifie qu’au moins une variable doit être vraie pour que la condition soit considérée comme globalement vraie.
  • Une valeur est l’information réelle que la variable recherche. Par exemple, si le order.discountCode spécifique que vous souhaitez que le flux de travail vérifie est AFFILIATE10, il s’agit alors de la valeur à inclure dans le cadre de la condition.

Au fur et à mesure que vous sélectionnez vos variables et vos opérateurs, l’étape de condition dans le canevas de Shopify Flow se met à jour pour refléter votre instruction conditionnelle en langage clair, afin que vous puissiez vérifier si la condition que vous créez est correctement formatée. Vous pouvez cliquer sur Ajouter une description pour remplacer l’instruction conditionnelle par défaut par votre propre description écrite.

En savoir plus sur les éléments des conditions dans Shopify Flow.

Comprendre les variables dans les conditions

Lors de l’élaboration d’une étape de condition dans un flux de travail, la première étape que l’on vous invite à effectuer est d’ajouter une variable. Mais qu’est-ce qu’une variable ?

Dans Shopify Flow, une variable est un paramètre fictif qui indique les données utilisées par la condition dans le flux de travail. Lorsqu’une condition indique « Si A est supérieur à 10... », la partie A est la variable. Choisir une variable pour une condition revient essentiellement à indiquer précisément à la condition quelles données évaluer.

Les variables sont formatées à l’aide de la notation par points de la GraphQL Admin API. Vous n’avez pas besoin de maîtriser l’API pour créer des flux de travail avec l’appli Flow, mais une compréhension de base des noms de variables et de leurs définitions peut vous aider à construire la logique de flux de travail spécifique que vous souhaitez.

Pour comprendre les données qu’une variable représente, tenez compte des informations suivantes sur les variables :

Conseil : obtenir de l’aide sur les variables auprès de l’assistant Dev Docs

Si vous ne savez pas quelle variable sélectionner lors de la création de votre condition, vous pouvez demander conseil à l’assistant Dev Docs de Shopify. L’assistant Dev Docs a accès à toute la documentation concernant la GraphQL Admin API et peut proposer des suggestions sur la façon de formater une condition dans Shopify Flow :

  1. Accédez à Shopify Dev Docs.
  2. Cliquez sur Ask Assistant pour ouvrir le panneau de chat.
  3. Dans le champ du message, saisissez votre requête, par exemple « Quelle variable dois-je utiliser dans Shopify Flow si je souhaite accéder aux données des balises de client lorsque mon déclencheur commence par « Commande créée » ? ».
  4. Appuyez sur Entrée ou cliquez sur Envoyer.

Comprendre la notation par points des variables

Lorsque vous sélectionnez des variables, vous remarquerez qu’elles sont formatées comme des mots-clés séparés par des points, par exemple order.customer.tag. Ce format indique les étapes que l’API suit pour accéder aux données que vous souhaitez utiliser. Chaque « étape » d’une variable est séparée par un point, et le chemin d’accès aux données se lit de gauche à droite. La longueur des variables peut varier en fonction de l’emplacement de stockage des données dans l’API et du chemin que le flux de travail emprunte pour y parvenir.

Par exemple :

  • order.email : vérifie l’adresse e-mail associée au/à la client(e) pour la commande. C’est un peu comme si vous cliquiez sur une commande, puis que vous vérifiiez l’adresse e-mail dans les détails de la commande.
  • refunds_item.staffMember.name : vérifie la commande pour le remboursement d’un article, accède aux informations sur l’employé(e) associé(e) à ce remboursement et vérifie son nom complet.

Lorsque vous choisissez une variable, réfléchissez à la façon dont vous naviguez dans l’interface administrateur Shopify pour trouver les informations souhaitées. Il est probable que l’API doive emprunter un chemin similaire, ce qui peut vous aider à déterminer comment votre variable pourrait être formatée.

Par exemple, si vous examinez une nouvelle commande et que vous voulez savoir dans quel groupe RFM se trouve le/la client(e) associé(e) à la commande, vous pouvez cliquer sur son nom dans la commande pour être redirigé(e) vers la page de détails du client dans l’interface administrateur Shopify, puis consulter le résumé d’analyse du client pour lire la valeur affichée dans la colonne Groupe RFM.

La variable que vous utiliseriez pour renvoyer les mêmes données dans Shopify Flow utiliserait un chemin similaire : order.customer.statistics.rfmGroup.

Exigences en matière de données pour les variables

Les variables nécessitent des données. Si les bonnes données ne sont pas disponibles pour la variable, la condition ne fonctionnera pas et le flux de travail échouera. En fonction du déclencheur que vous avez sélectionné au début de votre flux de travail, les options de variables à ajouter à vos conditions changent pour refléter les options possibles en fonction des données disponibles.

Par exemple, si votre flux de travail commence par le déclencheur Produit créé, les conditions que vous créez à partir de ce déclencheur sont limitées aux variables disponibles dans le jeu de données produit. Par conséquent, des variables telles que product.category.name, product.vendor et variants_item.displayName sont toutes disponibles pour être utilisées dans le cadre de la condition. En revanche, des variables telles que customer.verifiedEmail ou subscriptionContracts_item.status ne s’afficheraient pas comme options, car elles ne sont pas associées au jeu de données de produit.

Toutefois, cela ne signifie pas nécessairement que les données contenues dans d’autres jeux de données sont complètement inaccessibles. Certaines données peuvent être consultées à partir de plusieurs chemins dans l’API, de la même manière que vous pouvez cliquer sur différents liens pour accéder à la même page dans l’interface administrateur Shopify. En pratique, cela signifie que différents déclencheurs nécessitent une notation de variable différente pour renvoyer les mêmes informations.

Par exemple, vous souhaitez que votre flux de travail vérifie les balises sur le profil d’un(e) client(e). Si votre flux de travail commence par le déclencheur Commande créée, la variable sera order.customer.tags, car le flux de travail commence avec les données de la commande, vérifie ensuite les informations sur le/la client(e) dans la commande, puis vérifie les balises de ce/cette client(e). Si votre flux de travail commence par le déclencheur Client(e) créé(e), la variable sera simplement customer.tags, car le flux de travail commence avec les données du/de la client(e) et peut donc directement vérifier les balises sur son profil.

En raison du style de notation par points dans Shopify Flow, la recherche de variables à utiliser dans une condition en fonction de mots-clés peut renvoyer plusieurs résultats. Il est important de comprendre ce que le chemin de la variable indique pour déterminer la variable à choisir lors de la création de votre condition.

Par exemple, votre flux de travail utilise le déclencheur Commande créée et vous recherchez une variable à l’aide du mot-clé tags. Votre recherche pourrait renvoyer les résultats suivants, qui vérifient différentes informations dans la commande :

  • order.tags : les balises appliquées à la commande elle-même. Par exemple, #commande urgente ou #cadeau.
  • order.customer.tags : les balises appliquées au/à la client(e) qui a passé la commande. Par exemple, #VIP ou #affilié.
  • order.lineItems.product.tags : les balises appliquées aux produits achetés dans la commande. Par exemple, #fragile ou #IDrequise.

Selon le type de balises que vous souhaitez que le flux de travail vérifie, vous devez sélectionner la variable appropriée pour que votre condition fonctionne comme prévu.

Comprendre les opérateurs logiques dans les conditions

Les opérateurs logiques définissent la manière dont votre condition est appliquée et font qu’une instruction est soit vraie, soit fausse. Lorsqu’une condition indique « Si A est supérieur à 10... », la partie est supérieur à est l’opérateur logique. Choisir un opérateur logique pour une condition revient essentiellement à indiquer à la condition comment évaluer la variable.

Dans les flux de travail Shopify Flow, il existe trois types d’opérateurs logiques :

  • Les opérateurs au niveau du champ, tels que Supérieur à ou Commence par.
  • Les opérateurs de liste, tels que Au moins un(e) de ou La totalité de.
  • Les opérateurs au niveau de la condition, tels que ET ou OU.

Les opérateurs au niveau du champ et les opérateurs de liste s’appliquent au niveau de la variable, tandis que les opérateurs au niveau de la condition s’appliquent à la condition globale et peuvent être utilisés pour combiner plusieurs variables en une seule condition.

Les opérateurs au niveau du champ sont les types d’opérateurs les plus courants, utilisés dans tous les types d’instructions de variable. Avec les opérateurs au niveau du champ, vous pouvez créer des instructions conditionnelles telles que « Si A est supérieur à 10, alors faire X » ou « Si B contient « VIP », alors faire X » pour avoir un plus grand contrôle sur les valeurs d’une variable qui renvoient un résultat vrai. Égal à est l’opérateur logique par défaut.

Les opérateurs de liste ne peuvent s’appliquer qu’aux variables qui peuvent renvoyer une liste de résultats. Par exemple, la variable lineItems_item.variant.price renvoie le prix d’une variante de produit dans la commande, qui peut renvoyer une liste de résultats lorsque le/la client(e) a acheté plusieurs produits dans la même commande. Cela signifie que vous pouvez appliquer un opérateur de liste tel que Au moins un(e) de lorsque vous souhaitez qu’une instruction conditionnelle telle que « lineItems_item.variant.price est supérieur à 10 $ » soit vraie lorsqu’au moins une variante de produit dans la commande est supérieure à 10 $. En revanche, les opérateurs de liste ne s’affichent pas pour les variables qui ne peuvent renvoyer qu’un seul résultat à la fois. Par exemple, il n’y a qu’une seule valeur possible pour une variable telle que order.createdAt, car une commande ne peut être créée qu’une seule fois. Les opérateurs de liste ne sont donc pas affichés comme options pour modifier l’instruction contenant cette variable.

Les opérateurs de condition tels que AND et OR vous permettent d’inclure plusieurs variables dans la même condition. Par exemple, au lieu d’une instruction conditionnelle simple telle que « Si A est égal à 5, alors faire X », vous pouvez créer des conditions plus complexes telles que « Si A est égal à 5 et que B est supérieur à 10, alors faire X », ce qui exige que les variables A et B soient toutes les deux vraies, ou « Si A est égal à 5 ou si B est supérieur à 10 ou si C est inférieur à 1, alors faire X », ce qui exige qu’une seule des variables A, B ou C soit vraie. Utilisez AND lorsque tous les éléments d’un flux de travail doivent être vrais ; utilisez OR lorsqu’il suffit qu’un seul critère soit rempli pour que la condition soit vraie.

Importance : comprendre le fonctionnement des opérateurs logiques dans les conditions vous permet de créer des flux de travail qui vérifient exactement les critères que vous souhaitez. Avec les 3 types d’opérateurs logiques, vous pouvez élaborer des instructions conditionnelles détaillées et complexes pour créer des flux de travail qui vérifient des conditions très précises.

En savoir plus sur les opérateurs logiques dans les conditions.