Vue d’ensemble
En général, lorsqu’une règle contient plusieurs blocs, chaque bloc est exécuté dans l’ordre de haut en bas, et si les conditions d’un bloc sont remplies, alors les actions de ce bloc sont exécutées. Ainsi, chaque règle peut avoir plusieurs actions. Mais parfois, nous ne voulons pas de ce comportement : nous voulons qu’un seul bloc s’exécute puis que la règle s’arrête. C’est là qu’intervient le branchement. Le branchement vous permet de construire des règles en utilisant plusieurs blocs de conditions qui suivent la logique if → else if → else. Chaque bloc est vérifié séquentiellement, et dès qu’un bloc correspond, ses actions sont exécutées, et la règle s’arrête. Cela garantit qu’un seul bloc s’exécute, évitant les actions qui se chevauchent ou entrent en conflit. C’est une fonctionnalité très puissante qui peut être utilisée pour créer des règles complexes avec plusieurs conditions.Voici un exemple d’une règle avec branchement comportant trois blocs. Ici, nous voulons appliquer des réductions différentes en fonction du tag produit, et nous avons une remise par défaut de 5 % sur tous les frais d’expédition dans le cas où le client n’est éligible à aucune des autres réductions. Un seul bloc sera exécuté selon les conditions, puis la règle s’arrêtera.
La condition clé ici est Toutes les conditions précédentes invalides
dans les deuxième et troisième blocs, ce qui garantit qu’un seul bloc sera exécuté selon les conditions, puis la règle s’arrêtera. En utilisant cette condition, vous pouvez mettre en place un branchement dans n’importe quelle règle.

1
Si le tag produit est sport et que le montant du sous-total de la commande est supérieur ou égal à 33
Alors une réduction de 20 % sur l’expédition sera appliquée et la règle s’arrêtera.
2
Sinon si le tag client est VIP
Alors une réduction de 50 % sur l’expédition sera appliquée et la règle s’arrêtera.
3
Sinon (par défaut)
Alors une réduction de 5 % sur l’expédition sera appliquée.
Explication
Premier bloc de conditions (if)
- Le système commence avec le premier bloc de conditions.
- Ce bloc peut inclure plusieurs sous-conditions combinées avec ET ou OU.
- Si la condition globale du bloc est remplie, son action “Alors” s’exécute (par ex., appliquer une réduction de 20 %).
- Une fois exécuté, le système ne vérifie pas les blocs suivants.
Exemple : Le tag produit a la valeur sport ET le montant du sous-total ≥ 33 OU le tag produit a la valeur shoes → Appliquer 20 % de réduction sur tous les frais d’expédition.

Bloc(s) de conditions Else if
- Si le premier bloc ne correspond pas, le système vérifie le ou les blocs suivants.
- Un bloc Else If peut contenir plusieurs sous-conditions utilisant ET ou OU, et il doit inclure la condition “Toutes les conditions précédentes invalides” comme sous-condition.
- Il peut y avoir un ou plusieurs blocs en séquence. Toutefois, si la condition “Toutes les conditions précédentes invalides” n’est pas présente, le bloc ne fonctionnera pas comme un Else If et se comportera comme un bloc If normal.
- Si la condition globale du bloc est remplie, son action “Alors” s’exécute (par ex., appliquer 50 % de réduction), et l’évaluation s’arrête.
Exemple : Toutes les conditions précédentes invalides ET le tag client a la valeur VIP → Appliquer 50 % de réduction sur tous les frais d’expédition.

Bloc de repli (else)
- Si aucun des blocs précédents ne correspond, vous pouvez ajouter un bloc de repli avec la condition Toutes les conditions précédentes invalides.
- Cela agit comme le Else (par défaut) et garantit qu’il y a toujours une action “Alors” (par ex., appliquer une réduction de 5 %) lorsque aucun des blocs précédents n’a été exécuté.
Exemple : Toutes les conditions précédentes invalides → Appliquer 5 % de réduction sur tous les frais d’expédition.

Vous devez organiser les blocs de la priorité la plus élevée à la plus basse.
Le premier bloc est la priorité la plus élevée et le dernier bloc est la priorité la plus basse.
Le premier bloc est la priorité la plus élevée et le dernier bloc est la priorité la plus basse.
Exemple de cas d’utilisation
Imaginons que vous souhaitiez appliquer différentes réductions sur l’expédition en fonction des tags produits.Configuration de la règle
Bloc 1 (if) → Le tag produit a la valeursport
→ Appliquer 20 % de réduction sur tous les frais d’expédition (priorité la plus élevée).

Pour ajouter un nouveau bloc après le premier, vous pouvez soit :
Cliquer sur le bouton “Ajouter un nouveau bloc” dans le constructeur de règles.

winter
ET Toutes les conditions précédentes invalides → Appliquer 50 % de réduction sur tous les frais d’expédition.



Flux d’exécution
Le système commence avec le Bloc 1. S’il correspond (tag produit =sport
), une réduction de 20 % sur l’expédition est appliquée, et la règle s’arrête.

winter
, alors 50 % de réduction sur l’expédition est appliquée, et la règle s’arrête.

