Promotions et codes promo Sylius : préparer avec l'IA
Un agent IA peut préparer vos promotions Sylius à partir d'une phrase comme « moins 20 % sur les sandales, du 1er au 7, sur la boutique française, non cumulable ». Il la traduit en règles, actions, dates, canal et codes, vérifie les conflits avec les promotions existantes, et vous présente un brouillon lisible. Vous validez, il n'active rien seul. Le gain est moins dans la vitesse que dans les erreurs évitées : mauvais canal, date de fin oubliée, cumul imprévu.
Je suis développeur Sylius et Symfony indépendant, et j'intègre des agents IA dans des boutiques en ligne. Les promotions sont l'un des écrans de l'administration qui font le plus hésiter les commerçants, parce qu'une case mal cochée coûte de la marge sans faire de bruit. La page agents IA pour Sylius présente l'ensemble de l'approche.
Pourquoi les promotions Sylius sont-elles source d'erreurs ?
Sylius est puissant sur les promotions, et c'est précisément ce qui les rend délicates. Une promotion panier combine des règles (un taxon, un montant minimum, un nombre d'articles, un groupe de clients) et des actions (un pourcentage, un montant fixe, la livraison offerte), avec un canal, des dates, une priorité, une exclusivité et une limite d'utilisation. À côté existent les promotions catalogue, qui baissent le prix affiché avant le panier. Et les codes promo peuvent être uniques ou générés par lots.
Les erreurs que je vois le plus souvent sont banales : la promotion oubliée sur un canal, une date de fin absente qui laisse la remise courir, deux remises qui se cumulent alors qu'elles ne devraient pas, un code partagé sur un site de bons plans sans limite d'utilisation. Aucune n'est spectaculaire. Toutes se découvrent tard, dans le chiffre.
Que prépare l'agent, concrètement ?
Vous décrivez l'opération en français, comme vous l'expliqueriez à un collègue. L'agent lit d'abord la boutique : vos canaux, vos taxons, vos groupes de clients, les promotions déjà programmées. Il pose ensuite les questions que votre phrase laisse ouvertes. Remise catalogue ou panier ? Avec ou sans code ? Cumulable avec la livraison offerte ? Combien d'utilisations par client ?
Il produit alors un brouillon structuré, lisible par une personne, et le même brouillon dans le format attendu par Sylius.
| Élément | Ce que l'agent propose | Ce que vous vérifiez |
|---|---|---|
| Type | Catalogue ou panier, selon l'effet voulu | Que le prix barré ou la remise au panier correspond à votre communication |
| Règles | Taxon, montant minimum, groupe de clients | Le bon rayon, sans produits exclus oubliés |
| Actions | Pourcentage, montant fixe, livraison offerte | Le niveau de remise |
| Canal et dates | Canal ciblé, début et fin explicites | Le fuseau horaire et l'heure de fin |
| Cumul | Priorité, exclusivité, conflits détectés | Les chevauchements signalés |
| Codes | Code unique ou paramètres de génération par lot, limite d'utilisation | Le nombre et la diffusion prévue |
La détection des conflits est faite par le code, pas par le modèle : une requête liste les promotions actives sur les mêmes dates et le même canal, et les produits qu'elles touchent. L'agent n'a plus qu'à expliquer le résultat en clair. De même, une simulation sur quelques paniers types calcule l'effet de la remise sur le total. C'est la même règle partout : le modèle comprend et formule, le code compte.
Et si un agent le faisait pour vous ?
Laissez votre numéro : je vous rappelle sous 24 heures ouvrées et je regarde avec vous ce qu'un agent peut prendre en charge dans votre boutique, dans votre budget.
Par où passe l'agent dans Sylius ?
Sur Sylius 2.1 et plus, le plugin officiel Admin MCP Server expose l'API d'administration à un modèle, et les promotions font partie des groupes de ressources couverts. C'est un bon point de départ, à deux réserves près : le plugin en est à la version 0.2.0, et il donne accès à bien plus que les promotions. Je n'active que les groupes nécessaires, et j'écris par-dessus des outils étroits : lire les promotions, préparer un brouillon, jamais publier.
Le plugin Ask AI, qui ajoute une discussion dans l'administration de Sylius 2.2, transforme chaque écriture en action proposée que l'administrateur approuve ou rejette. C'est exactement le comportement voulu pour une promotion. Il reste une preuve de concept, et je l'évalue dans l'article sur Ask AI. Sur Sylius 1, ces plugins ne s'installent pas : l'agent passe alors par du code dans la boutique, ou la migration vers Sylius 2 se pose.
Ce que l'agent ne fait jamais seul
L'agent ne lance, ne prolonge et ne désactive aucune promotion. Il ne choisit pas le niveau de remise, ne diffuse aucun code et ne décide pas du prix de référence affiché à côté d'un prix barré. L'annonce d'une réduction de prix est encadrée par le Code de la consommation, et je ne laisse pas ce jugement à un modèle. L'agent prépare ; vous décidez et vous publiez.
Ce cadre est inscrit dans le code et dans les garde-fous : une remise au-delà d'un seuil que vous fixez, une promotion sans date de fin ou un code sans limite d'utilisation sont signalés en rouge dans le brouillon. Chaque brouillon est conservé avec la demande d'origine, ce qui permet de retrouver plus tard pourquoi une opération a été montée ainsi.
Et après le lancement ?
Une promotion se pilote aussi pendant qu'elle tourne. Un usage de code très supérieur à vos prévisions, une remise qui s'applique sur un canal inattendu : ce sont des signaux qu'un rapport quotidien fait remonter chaque matin. Pour les remises personnalisées envoyées après un panier abandonné, le sujet a son propre article : personnaliser les relances de paniers abandonnés.
Enfin, si un assistant conversationnel parle de vos promotions à vos clients, il doit lire la promotion réellement active, jamais une version mémorisée : c'est le sujet de l'article sur les prix inventés par les chatbots.
Pour savoir si un agent de préparation des promotions se justifie chez vous, je propose un diagnostic IA offert : je vous rappelle sous 24 heures ouvrées, je regarde vos opérations récentes et votre version de Sylius, et je vous propose une solution qui rentre dans votre budget.
