Exigences et restrictions relatives aux scripts Shopify
Certaines restrictions s’appliquent aux scripts Shopify pour renforcer la sécurité et pour garantir que les scripts peuvent s’exécuter quel que soit le nombre de clients qui utilisent votre boutique à un moment donné. Gardez les restrictions suivantes à l’esprit si vous développez des scripts pour votre boutique Shopify.
Sur cette page
- Boutique en ligne et Storefront API
- Scripts publiés
- Nombre maximal de scripts Shopify
- Commandes provisoires
- Champs méta
- Attributs du panier/de paiement
- Codes de réduction
- Articles du panier
- Tarifs d’expédition
- Plusieurs devises
- Expressions régulières
- Thèmes
- Ressources
- Entrée/sortie
- Heure et caractère aléatoire
- Limite de caractères des scripts
- Commandes par abonnement
- Paiements accélérés
- Point de vente Shopify (POS)
- Renommer les passerelles de paiement
- Fractionnement de l’expédition lors du paiement
Boutique en ligne et Storefront API
Lorsque vous créez ou modifiez un script, vous choisissez s’il s’exécutera uniquement dans votre boutique en ligne ou dans votre boutique en ligne et dans les applications suivantes :
- Applications personnalisées créées avec la Storefront API, le SDK JavaScript Buy ou les SDK Mobile Buy (Android et iOS)
- Applications personnalisées qui génèrent des paiements
- Générateurs d’applications mobiles Tapcart et Plobal Apps
Pour que les scripts fonctionnent, votre site web doit disposer d’une fonctionnalité de panier intégrée. Par conséquent, vous ne pouvez pas utiliser les scripts avec les boutons d’achat ni avec le canal de vente Facebook and Instagram by Meta.
Scripts publiés
Un seul script par type de script peut être publié à la fois. Par exemple, vous pouvez publier un script d’articles du panier et un script de tarifs d’expédition, mais vous ne pouvez pas publier deux scripts d’articles du panier en même temps.
Nombre maximum de scripts Shopify
Vous pouvez créer jusqu’à 200 scripts Shopify.
Commandes provisoires
Les scripts d’articles du panier, de tarifs d’expédition et de paiement ne fonctionnent pas avec les commandes provisoires ni avec le paiement des commandes provisoires.
Champs méta
Les scripts Shopify ne peuvent pas accéder aux champs méta.
Attributs du panier/de paiement
Les scripts Shopify ne peuvent pas accéder aux attributs de panier Shopify Liquid. Vous pouvez ajouter ces attributs à vos pages de panier pour recueillir des informations supplémentaires auprès de vos clients, mais vous ne pouvez pas créer de script qui les utilise.
Codes de réduction
Les scripts peuvent déterminer si un code de réduction est appliqué, le montant de la réduction et le type de réduction (montant fixe, pourcentage ou expédition). Les scripts ne peuvent pas accéder à la manière dont le code de réduction est appliqué, par exemple s’il est spécifique au panier ou à un article du panier. Cela signifie que les scripts ne peuvent pas accéder aux totaux après réduction ni aux réductions automatiques.
Les scripts d’articles du panier et d’expédition qui accèdent aux réductions appliquées à un panier ne sont pas compatibles avec les cumuls de réductions. La méthode .discount_code ne peut renvoyer qu’un seul code de réduction. Les paniers qui incluent plusieurs codes de réduction utilisant des cumuls de réductions ne sont pas pris en charge.
Articles du panier
Les scripts ne peuvent pas ajouter d’articles au panier ni augmenter le prix d’un article.
Tarifs d’expédition
Les scripts ne peuvent pas augmenter le prix d’un tarif d’expédition.
Devises multiples
Vos scripts risquent de ne pas fonctionner comme prévu avec les devises multiples. Pour vous assurer que vos scripts fonctionnent pour les paniers ou les paiements qui sont dans une devise autre que la devise principale de votre boutique, vous devez migrer vos scripts vers Shopify Functions.
Expressions régulières
La correspondance par expression régulière n’est pas prise en charge. Si vous créez un script d’article du panier, vous pourrez peut-être utiliser l’une des méthodes suivantes comme solution de contournement :
- Méthode
split - Méthodes
start_withetend_with - Méthode
include
Thèmes
Vous devrez peut-être mettre à jour votre thème Liquid pour qu’il prenne en charge vos scripts et pour éviter toute confusion chez vos clients. Par exemple, tous les thèmes n’affichent pas les réductions par article du panier dans le panier. Si c’est votre cas, vous devez modifier votre thème pour afficher les réductions sur les articles du panier. En savoir plus sur les types de modifications que vous pouvez apporter à vos thèmes Liquid.
Ressources
La quantité de processeur (CPU) et de mémoire disponible pour un script est limitée. Les ressources réservées à un script dépendent de la taille du panier et du nombre de calculs que le script exige. Shopify suit attentivement ces limites de ressources pour s’assurer qu’elles n’empêchent pas votre script de fonctionner comme prévu.
Lorsque vous testez un script, la console du Script Editor affiche le pourcentage de ressources allouées que le script utilise.
Entrée/sortie
À quelques exceptions près, les scripts Shopify ne sont pas capables d’effectuer des entrées/sorties. Cela signifie que les scripts ne peuvent pas exécuter de requêtes web ou d’appels de base de données, et qu’ils ne peuvent pas obtenir de saisie de la part d’un utilisateur.
La méthode puts peut être utilisée pour imprimer du texte dans la console de l’appli Script Editor.
Temps et caractère aléatoire
Les scripts ne peuvent pas impliquer de calculs aléatoires ou basés sur le temps. L’objet Time et la méthode rand ne sont pas accessibles par les scripts Shopify.
Comme les scripts s’exécutent chaque fois que le total d’un panier est recalculé, les scripts basés sur le temps ou la génération de nombres aléatoires peuvent avoir des résultats imprévisibles ou déroutants si un client modifie souvent son panier. Cependant, vous pouvez programmer l’exécution de scripts pendant des événements en utilisant l’appli Launchpad.
Limite de caractères des scripts
Vous pouvez créer des scripts d’une longueur maximale de 40 960 caractères.
Commandes par abonnement
Si vos scripts d’articles du panier et d’expédition créent une réduction pour un produit par abonnement, la réduction s’applique aux paiements suivants :
- au premier paiement d’une commande avec paiement à la livraison uniquement, et non aux commandes programmées
- au montant total d’une commande par abonnement prépayée
En savoir plus sur les abonnements et les scripts.
Paiements accélérés
Lorsque vous utilisez des scripts Shopify avec des paiements accélérés, les réductions sur l’expédition sont appliquées après que votre client a sélectionné un moyen de paiement accéléré. Pour cette raison, les modifications du prix de la commande ne sont pas répercutées sur l’appareil ou le navigateur du client. Les clients peuvent voir le prix d’origine sur leur page de paiement accéléré, mais le prix réduit correct leur sera facturé.
Shopify Point of Sale (POS)
Les scripts Shopify ne fonctionnent pas avec Shopify Point of Sale (POS).
Renommage des passerelles de paiement
Vous ne pouvez pas renommer les passerelles de paiement dont le nom s’affiche sous la forme d’une image ou d’un logo. Les passerelles de paiement qui affichent un logo à côté de leur nom peuvent être renommées.
Expédition fractionnée lors du paiement
Les scripts d’expédition sont incompatibles avec l’expédition fractionnée dans Shopify Checkout. Si vous utilisez des scripts d’expédition et activez l’expédition fractionnée, les envois divisés ne sont pas affichés à vos clients lors du paiement.