Aller au contenu principal
Technique

Validation de la date de livraison Shopify : bloquez les dates absentes, fermées ou complètes au paiement

Jahangir Alam31 octobre 2026Faits vérifiés le 31 octobre 20267 min read

Un sélecteur de date de livraison affiche des dates. La validation les impose. Sur Shopify, la validation est une Function de validation du panier et du paiement : une vérification exécutée sur les serveurs de Shopify avant le paiement, qui arrête la commande si la date est absente, fermée ou complète. Elle fonctionne sur tous les forfaits Shopify et sur toutes les voies d'accès au paiement, y compris Shop Pay, Apple Pay et Buy it now. Seul un sélecteur affiché dans la page de paiement nécessite Plus.

Pourquoi un sélecteur seul laisse passer de mauvaises dates

Un sélecteur sur la page produit ou panier n'est qu'un affichage. Il grise les dates fermées et complètes dans le navigateur du client, et c'est tout. Des commandes passent quand même sans date valide lorsque :

  • Le client utilise un bouton express. Buy it now, Shop Pay, Apple Pay et Google Pay sur la page produit mènent directement au paiement : le sélecteur du panier ne s'exécute jamais. Voir Buy It Now saute la date de livraison.
  • La date s'est remplie pendant le paiement. Le sélecteur affichait « 1 restant » au chargement de la page. Quelqu'un d'autre l'a prise.
  • Le panier date d'hier. Le client a choisi une date, est revenu après l'heure limite et a payé.
  • Le tiroir du panier n'affiche pas le sélecteur, ou le thème a changé et le bloc du sélecteur a disparu.
  • Quelqu'un modifie la date de livraison du panier à la main ou avec un script.

L'option gratuite de Shopify, un sélecteur de date ajouté à la page panier avec du code de thème, a la même faille : il collecte une date, mais rien ne la vérifie au paiement.

Les contrôles que la validation de la date de livraison devrait effectuer

Voici les contrôles qu'OrderRules effectue au paiement, avec le message que le client voit par défaut :

ContrôleCe qu'il détecteMessage par défaut
Date obligatoireAucune date, souvent avec Buy it now ou Shop PayVeuillez choisir une date de livraison avant de procéder au paiement.
Date autoriséeDates passées, dans le délai de préparation ou après l'heure limite, un jour où vous ne livrez pas, au-delà de votre horizon de réservationCette date de livraison n'est plus disponible. Veuillez en choisir une autre.
Date ferméeUne date bloquée, comme un jour fériéNous ne livrons pas à la date sélectionnée. Veuillez en choisir une autre.
Jour completLa date a atteint votre nombre maximum de commandes par date de livraisonLa livraison le {date} est complète. Veuillez choisir une autre date.
Créneau horaireAucun créneau choisi, ou créneau completVeuillez choisir un créneau de livraison. / Ce créneau de livraison est complet. Veuillez en choisir un autre.
Limite de produit par datePlus d'unités d'un produit qu'il n'en reste pour cette dateOnly {n} left for delivery on {date}. Please reduce the quantity or choose another date.
ModeArticles en retrait seul et en livraison seule mélangés, ou mauvais modeCertains articles de votre panier nécessitent des modes de traitement différents et ne peuvent pas être achetés ensemble.
RetraitPas de date, de point ni d'heure de retrait ; jour ou créneau de retrait fermé ou completVeuillez choisir une date de retrait avant de procéder au paiement. (et cinq autres)

Si le contrôle d'une application au paiement ne couvre que la première ligne, elle arrête les commandes sans date, mais pas les commandes en surréservation.

Trois façons d'activer la validation sur Shopify

1. Créer votre propre Function de validation. Un développeur écrit une Function de validation du panier et du paiement qui lit la date de livraison du panier et renvoie une erreur si elle n'est pas autorisée. Elle fonctionne sur tous les forfaits. Une Function ne peut pas interroger une base de données pendant son exécution : vos dates autorisées et vos compteurs de réservations doivent donc être écrits dans un metafield à l'avance et tenus à jour. C'est l'essentiel du travail. L'article les Functions de validation Shopify expliquées détaille le fonctionnement.

2. Utiliser une application de sélecteur de date avec validation au paiement. Posez-vous cinq questions avant de l'installer :

  1. Utilise-t-elle une Function de validation du panier et du paiement, ou seulement du JavaScript de thème ?
  2. Arrête-t-elle les commandes Buy it now, Shop Pay et Apple Pay sans date ?
  3. Sur quels forfaits Shopify la vérification s'exécute-t-elle ?
  4. Revérifie-t-elle les dates et créneaux complets au paiement, ou se contente-t-elle de les masquer dans le sélecteur ?
  5. Pouvez-vous modifier les messages, dans chaque langue où vous vendez ?

Notre comparatif des applications de sélecteur de date de livraison indique lesquelles appliquent la règle au paiement et lesquelles se contentent d'afficher.

3. Sur Shopify Plus, placer le sélecteur dans le paiement. Une extension d'interface de paiement affiche le calendrier dans la page de paiement, que voient donc aussi les acheteurs express. Ce n'est toujours qu'un affichage : associez-le à une Function de validation, sinon une date peut être ignorée ou périmée.

Configurer la validation dans OrderRules

  1. Avec le forfait Advanced, ouvrez votre règle de disponibilité et activez Exiger une date de livraison au paiement (et Exiger un créneau horaire si vous utilisez des créneaux).
  2. Dans Shopify, ouvrez Paramètres → Paiement, faites défiler jusqu'à Règles de paiement et vérifiez que la règle OrderRules est activée.
  3. Définissez ce que la validation vérifie : Nombre maximum de commandes par date de livraison, Limite/jour sur chaque créneau horaire, limites de produit comptées par Date de livraison, et dates bloquées.
  4. Dans Messages de paiement, modifiez n'importe quel message ou appliquez un pack de langue.
  5. Testez sans date, avec une date fermée et avec une date complète, via le panier, Buy it now et Shop Pay. Une boutique de développement est l'endroit le plus sûr pour commencer.

Ce que la validation ne peut pas attraper

  • Deux paiements dans la même seconde pour la dernière place peuvent passer tous les deux. La validation lit ce qui est réservé ; elle ne pose pas de verrou.
  • Juste après une heure limite, une date peut passer le paiement pendant un court moment, le temps que l'application actualise sa liste de dates autorisées. Le sélecteur de la page, lui, retire la date immédiatement.
  • Les commandes qui contournent le paiement ne sont pas vérifiées : Shopify POS, renouvellements d'abonnement, commandes créées dans l'admin et marquées comme payées, et commandes d'autres applications ou de l'Admin API. Elles comptent quand même dans vos limites.
  • Les modifications après achat. Changer la date d'une commande dans l'admin Shopify n'est pas vérifié et ne déplace pas sa place.
  • Les codes postaux et les zones. OrderRules ne vérifie pas l'adresse. Pour ne plus livrer une zone, excluez-la de vos zones d'expédition Shopify.

Plus de détails dans compatibilité et limites connues.

À lire aussi

Questions fréquentes

Oui. La validation s'exécute dans une Shopify Function de validation du panier et du paiement, que les applications publiques peuvent utiliser sur tous les forfaits, y compris Basic. Seul un sélecteur de date affiché dans la page de paiement elle-même nécessite Shopify Plus.

Oui. Ces boutons contournent le panier, donc un sélecteur placé sur la page panier ne les voit jamais, mais la Function de validation s'exécute à chaque paiement. Si la date est absente, fermée ou complète, le client est arrêté avant de payer.

Pas lorsque la validation est activée. La date est vérifiée par rapport à votre délai de préparation, votre heure limite, vos jours de livraison, votre horizon de réservation et vos dates bloquées. Une exception : peu après une heure limite, une date peut passer le temps que l'application actualise sa liste de dates autorisées.

Un message au paiement, par exemple Veuillez choisir une date de livraison avant de procéder au paiement, ou La livraison le 2026-12-23 est complète. Veuillez choisir une autre date. Dans OrderRules, vous pouvez modifier chaque message ou appliquer un pack de langue.

Presque toujours. La validation lit ce qui est déjà réservé au lieu de poser un verrou : deux paiements finalisés dans la même seconde pour la dernière place peuvent donc passer tous les deux. Considérez les limites comme fiables, pas comme une garantie.

Non. La vérification au paiement fonctionne sur tous les forfaits. Plus ajoute seulement la possibilité d'afficher le sélecteur de date dans la page de paiement ; sans Plus, le sélecteur reste sur la page produit ou panier et le paiement vérifie quand même la date.

Vous comparez des applications ?

Découvrez comment OrderRules se compare à toutes les autres applications Shopify de cette catégorie.

Prêt à reprendre le contrôle de vos commandes ?

Essayer OrderRules gratuitement