Shopify Scripts a cessé de fonctionner le 30 juin 2026. Tous les scripts encore publiés ont été désactivés, et rien n'a été migré automatiquement. Les remises, les règles de livraison et les règles de paiement passent chacune à leur propre API Shopify Function. Les limites de quantité et les règles de checkout passent à Cart and Checkout Validation (validation du panier et du checkout), et leur comportement change. Un script réduisait généralement la quantité dans le panier sans prévenir le client. Une Function de validation bloque le checkout et affiche un message à la place. Elle s'applique aussi aux checkouts express, fonctionne sur tous les plans quand elle provient d'une application de l'App Store, et peut appliquer des règles que Scripts n'a jamais pu gérer : horaires de la boutique, plafonds de commandes quotidiens et limites par client sur plusieurs commandes.
Dernière vérification : 28 septembre 2026, à partir du centre d'aide, du changelog et de la documentation développeur de Shopify. Les sources sont en fin d'article.
Transparence : OrderRules est une application de validation du checkout, l'une des options ci-dessous. Quand les outils natifs de Shopify suffisent, nous le disons.
La chronologie
| Date | Ce qui s'est passé |
|---|---|
| Févr. 2023 | Shopify annonce la fin de Scripts pour le 13 août 2024 |
| Plus tard | La date passe au 28 août 2025, puis au 30 juin 2026 |
| 4 févr. 2025 | Lancement du rapport de personnalisations, avec le 30 juin 2026 comme échéance |
| 15 avr. 2026 | Les Scripts ne peuvent plus être modifiés ni publiés |
| 30 juin 2026 | Tous les Scripts cessent de s'exécuter |
Le centre d'aide de Shopify indique désormais : "Any Scripts that were still published on your store have been deactivated and no longer work." (Tous les Scripts encore publiés sur votre boutique ont été désactivés et ne fonctionnent plus.) Le checkout a continué sans eux. Ce que faisait un script a tout simplement cessé de s'appliquer : une remise, un tarif d'expédition masqué ou un plafond de quantité. Si vous n'avez pas remplacé un script de quantité, des commandes au-delà de votre ancienne limite peuvent passer aujourd'hui.
Ce qui remplace chaque type de script
Il existait trois types de scripts : line item (articles), shipping (livraison) et payment (paiement). Chacun correspond à une API Function ou à une fonctionnalité native.
| Ce que faisait le script | Remplacement | Remarques |
|---|---|---|
| Remises sur articles, tarifs par paliers ou BOGO, tarifs selon les tags client | Remises natives, une application de remises (Discount Function API) ou catalogues B2B avec tarifs dégressifs | Jusqu'à 25 Functions de remise par boutique |
| Lots ou remplacement du prix d'une ligne | Cart Transform Function API | Le remplacement de prix (lineUpdate) est réservé à Plus |
| Masquer, renommer ou réordonner les tarifs d'expédition | Delivery Customization Function API | Jusqu'à 25 par boutique |
| Masquer, renommer ou réordonner les moyens de paiement (par exemple, pas de paiement à la livraison au-delà de 500 $) | Payment Customization Function API | Jusqu'à 25 par boutique |
| Plafonner les quantités, minimums, multiples | Cart and Checkout Validation Function API | Bloque le checkout avec un message ; jusqu'à 25 par boutique |
| Valeur de commande minimale ou maximale | Limites de valeur de commande de Checkout Blocks (natif) | Tous les plans depuis le 13 avril 2026 |
| Minimum, maximum et incrément pour les acheteurs B2B | Règles de quantité des catalogues B2B (natif) | Tous les plans depuis le 2 avril 2026 ; acheteurs d'entreprises B2B uniquement |
Pour voir ce que vous aviez, ouvrez Apps → Script Editor et cherchez le rapport de personnalisations (customizations report). Il couvre les scripts de paiement, de livraison et de remise produit, avec des applications recommandées et des tutoriels Functions pour chacun. Il ne convertit pas le code. Un script qui plafonnait les quantités apparaîtra comme un script de remise produit (line item), et le rapport ne vous orientera pas forcément vers la validation : vérifiez donc ces scripts à la main.
Limites de quantité : le comportement a changé
C'est la partie que la plupart des guides de migration passent sous silence.
Scripts ne pouvait pas bloquer le checkout. L'API Script n'avait aucun moyen de rejeter un panier ; le seul « rejet » concernait les codes de réduction. Les boutiques qui plafonnaient les quantités utilisaient une astuce dans un script line item : elles forçaient la quantité à la baisse, ou divisaient la ligne et supprimaient les unités en trop. Le client arrivait au checkout avec moins d'articles que choisi, souvent sans explication. Il s'agissait d'astuces de la communauté, pas de fonctionnalités documentées.
Les Functions ne peuvent pas modifier les quantités. Cart Transform peut développer, fusionner ou présenter autrement des lignes, mais pas les réduire. L'outil de l'ère Functions pour les limites, c'est Cart and Checkout Validation. Il vérifie le panier et, quand une règle est enfreinte, bloque le checkout et affiche un message, par exemple « Vous pouvez acheter jusqu'à 2 exemplaires de cet article. »
Ce que cela implique pour votre migration :
- Rédigez le message. Un client qui atteint une limite voit désormais votre formulation au checkout. Dites quoi changer : « Retirez 1 article pour continuer », pas « Erreur ».
- Affichez la limite plus tôt. Indiquez la limite sur la page produit et dans le panier, pour que le message du checkout surprenne rarement. Les applications de validation fournissent généralement un bloc de thème pour cela. OrderRules affiche les limites sur les pages produit et peut ajuster les champs de quantité aux multiples valides.
- Les checkouts express sont couverts. Shopify précise que la validation inclut les checkouts express : Shop Pay, PayPal, Google Pay et Apple Pay. Les limites de quantité gérées uniquement par le thème n'y tiennent pas, car les boutons d'achat immédiat contournent le panier.
Les règles que Scripts n'a jamais pu appliquer
Les Scripts s'exécutaient dans un bac à sable. Pas de requêtes web, pas de base de données et, selon les termes de Shopify, ils ne pouvaient pas "involve random or time-based calculations" (impliquer des calculs aléatoires ou liés au temps). Ils voyaient le panier en cours, ainsi que les tags, le nombre de commandes et le total dépensé d'un client. Trois règles courantes n'ont donc jamais été possibles avec Scripts :
| Règle | Pourquoi Scripts ne pouvait pas | Avec une application de validation |
|---|---|---|
| Fermer le checkout en dehors des horaires de la boutique, ou stopper les commandes du jour après une heure limite | Aucune logique liée à l'heure | Vérifié au checkout selon votre planning |
| Plafonner les commandes par jour ou par semaine pour la boutique ou un produit | Aucun historique des commandes du jour | L'application compte les commandes et bloque le checkout au plafond |
| Limiter un client sur plusieurs commandes (« 2 par client, pour toujours ») | Aucun historique d'achat par produit | L'application enregistre les achats de chaque client et les vérifie au checkout |
Si vous aviez renoncé à l'une de ces règles parce que Scripts ne pouvait pas la gérer, elle mérite un second regard.
Plans : Plus n'est plus obligatoire
Scripts était réservé à Shopify Plus. Les Functions, c'est différent :
- Les applications publiques de l'App Store avec Functions fonctionnent sur tous les plans, y compris Basic.
- Les applications personnalisées avec Functions nécessitent toujours Plus.
- Les limites de valeur de commande de Checkout Blocks et les règles de quantité B2B sont disponibles sur tous les plans depuis avril 2026.
Une boutique qui a quitté Plus, ou qui ne l'a jamais eu, peut donc appliquer des règles de checkout qui exigeaient autrefois Plus.
Où la validation ne s'exécute pas
Les Functions de validation couvrent le checkout de la boutique en ligne, les checkouts express, le panier, les checkouts B2B et les commandes provisoires. Shopify indique comme non pris en charge :
- POS
- Les renouvellements d'abonnement (commandes récurrentes)
- Les modifications de commande, dans l'admin ou au checkout
- Les commandes créées via la Create Order API
- Les options d'achat en précommande et « essayer avant d'acheter »
Si une règle doit s'appliquer à l'un de ces endroits, prévoyez autre chose, comme des procédures pour l'équipe au POS. Dans OrderRules, les commandes POS et les renouvellements d'abonnement sont tout de même comptés dans les limites, même s'ils ne sont pas bloqués. La liste complète figure sur notre page compatibilité et limitations connues.
Checklist de migration pour les règles de quantité et de checkout
- Recensez vos scripts. Ouvrez le rapport de personnalisations, ainsi que le code de Script Editor si vous en avez gardé une copie. Notez chaque script line item qui touchait à la quantité.
- Écrivez chaque règle en une phrase. Par exemple : « 2 sweats à capuche maximum par commande », « Les grossistes commandent par 12 » ou « Pas de commande de plus de 2 000 $ sans validation ». Il est plus facile de choisir un remplacement pour une phrase que pour du code Ruby.
- Commencez par les options natives.
- Limites de valeur de commande → Checkout Blocks.
- Minimums et multiples B2B → règles de quantité des catalogues B2B.
- Un panier énorme d'un article en stock → la limite d'ajout au panier (Paramètres → Checkout ; produits dont le stock est suivi uniquement).
- Choisissez une application pour le reste. Les minimums et multiples pour les acheteurs classiques, les plafonds par jour ou par semaine, les limites par client sur plusieurs commandes et les horaires de la boutique nécessitent tous une application de validation.
- Réécrivez les messages sous forme d'instructions, et affichez les limites sur les pages produit.
- Testez chaque parcours. Testez le checkout normal, Shop Pay, un bouton d'achat immédiat et une commande provisoire. Notez ensuite ce qui ne sera pas vérifié : POS, renouvellements d'abonnement et modifications de commande.
Pour un comparatif règle par règle de ce que Shopify fait désormais nativement, consultez les limites de commande natives de Shopify vs les applications.
La place d'OrderRules
OrderRules est une application publique de l'App Store construite sur la validation du checkout de Shopify : elle fonctionne donc sur tous les plans. Elle couvre les règles de quantité et de checkout que Scripts gérait mal ou pas du tout :
- Quantité minimale de commande et pas de quantité par produit ou variante, pour tous les acheteurs. Voir le guide de la quantité minimale de commande.
- Plafonds quotidiens, hebdomadaires et mensuels pour la boutique, un produit ou une collection.
- Limites par client sur plusieurs commandes en nombre de commandes, d'unités, de dépenses ou de poids. Les clients doivent se connecter ; voir les limites d'achat par client.
- Horaires de la boutique et fermetures pour jours fériés qui ferment le checkout.
Elle ne définit pas de minimum de valeur de commande (utilisez Checkout Blocks). Elle n'a pas de maximum par commande pour un seul produit ; pour cela, utilisez la limite d'ajout au panier de Shopify ou une limite quotidienne par client. Pour comprendre le fonctionnement de la validation, consultez la validation du checkout Shopify expliquée.
Sources
- Changelog Shopify : Les Scripts ne peuvent plus être modifiés ni publiés (12 mars 2026) · Rapport de personnalisations (4 févr. 2025)
- Changelog Shopify.dev : Shopify Scripts sera abandonné le 30 juin 2026
- Centre d'aide Shopify : Script Editor · Limitations · Transition vers Functions
- Shopify.dev : Cart and Checkout Validation Function API · Cart Transform · Disponibilité de Shopify Functions
- Changelog Shopify : Limites de valeur de commande Checkout Blocks sur tous les plans (13 avr. 2026) · Fonctionnalités B2B sur les plans non Plus (2 avr. 2026)
- Communauté Shopify : Annonce de l'abandon de Shopify Scripts (févr. 2023)