Installation, configuration et attributs produit
Portée du document
Ce document décrit l’installation du module Estimated Delivery Date, la configuration dans le panneau d’administration de Magento 2 ainsi que la gestion des attributs ajoutés au produit. La description des champs est basée sur l’implémentation actuelle du module.
Installation
Le package est destiné à une installation via Composer.
Exemple d’installation depuis un dépôt VCS :
composer config repositories.kowal.estimated.delivery.date vcs https://github.com/kowalco/estimated-delivery-datecomposer require kowal/module-estimated-delivery-datebin/magento module:enable Kowal_EstimatedDeliveryDatebin/magento setup:upgradebin/magento cache:flush
Après le déploiement en production, il convient d’exécuter le processus standard de compilation et de déploiement des ressources statiques conforme au projet Magento :
bin/magento setup:di:compilebin/magento setup:static-content:deploybin/magento cache:flush
Emplacement de la configuration
La configuration du module est disponible dans le panneau d’administration :
Stores > Configuration > Sales > Estimated Delivery Date
Les paramètres sont disponibles aux niveaux default, website et store view, conformément au mécanisme de configuration de Magento.
General
Enabled
Active ou désactive le module pour le périmètre de configuration concerné. Lorsque le champ est désactivé, les messages sur le frontend ne doivent pas être affichés.
Valeur par défaut : Yes.
Calculation Timezone
Fuseau horaire utilisé pour le calcul des dates et de l’heure de cut-off. Si le champ reste vide, le module utilise le fuseau horaire de la boutique configuré dans Magento.
Exemple de valeur :
Europe/Warsaw
Utilisation : utile lorsque la boutique fonctionne avec plusieurs store views ou lorsque l’entrepôt qui traite les expéditions travaille dans un fuseau horaire différent de la configuration par défaut de la boutique.
Fallback Message
Message de remplacement utilisé comme texte de secours lorsque la boutique souhaite afficher une information générale au lieu d’une date précise.
Valeur par défaut :
Nous confirmerons le délai de livraison après la validation de la commande.
Format de date utilisé lors du rendu des messages pour le client. Le champ utilise le modèle ICU pris en charge par le formatage des dates de Magento.
Valeur par défaut :
EEEE, d MMMM
Exemple de résultat :
lundi 18 mai
Date Calculation
Processing Days Min
Nombre minimal de jours ouvrés nécessaires pour préparer la commande avant l’expédition.
Valeur par défaut : 1.
Utilisation : détermine la date d’expédition la plus tôt possible.
Processing Days Max
Nombre maximal de jours ouvrés nécessaires pour préparer la commande.
Valeur par défaut : 1.
Utilisation : permet de créer une plage de dates d’expédition lorsque la préparation peut durer plus longtemps que le temps minimal.
Transport Days Min
Nombre minimal de jours ouvrés de transport entre l’expédition et la livraison.
Valeur par défaut : 1.
Utilisation : détermine la date de livraison la plus tôt possible après l’expédition.
Transport Days Max
Nombre maximal de jours ouvrés de transport.
Valeur par défaut : 2.
Utilisation : permet d’afficher une plage de livraison, par exemple lorsque le transporteur livre généralement en 1 à 2 jours ouvrés.
Same-day Shipping Cut-off Time
Heure limite pour l’expédition le jour même. La valeur doit être saisie au format HH:MM.
Valeur par défaut :
14:00
Si l’heure actuelle est postérieure au cut-off, le module reporte le début du calcul au jour ouvré suivant.
Non-working Weekdays
Liste des jours de la semaine considérés comme non travaillés. Les valeurs doivent être saisies sous forme de numéros ISO séparés par des virgules :
1 - lundi,2 - mardi,3 - mercredi,4 - jeudi,5 - vendredi,6 - samedi,7 - dimanche.
Valeur par défaut :
6,7
Utilisation : ignore par défaut les samedis et dimanches lors du calcul des jours ouvrés.
Safety Buffer Days
Tampon de sécurité supplémentaire ajouté au temps de transport.
Valeur par défaut : 0.
Utilisation : utile pendant les périodes de forte hausse des commandes, en cas d’activité instable des transporteurs ou pour les produits nécessitant une promesse de livraison plus prudente.
Display Settings
Show on Product Page
Active l’affichage de la date estimée sur la fiche produit.
Valeur par défaut : Yes.
Show in Cart
Active l’affichage de la date estimée dans le panier.
Valeur par défaut : Yes.
Show in Admin Order
Active la section Estimated Delivery Date dans la vue de la commande du panneau d’administration.
Valeur par défaut : Yes.
Show Cut-off Widget on Product Page
Active le widget de compte à rebours jusqu’à l’heure de cut-off sur la fiche produit.
Valeur par défaut : Yes.
Active le widget cut-off dans le panier.
Valeur par défaut : No.
Définit le mode d’affichage du widget cut-off.
Valeurs disponibles :
Inline - le widget est affiché à l’emplacement d’insertion du bloc,Fixed - le widget est fixé dans le coin de l’écran sélectionné,Inline + Fixed - le widget fonctionne à la fois comme élément inline et fixed.
Valeur par défaut : Inline.
Définit la position du widget fixed.
Valeurs disponibles :
Bottom Right - coin inférieur droit,Bottom Left - coin inférieur gauche,Top Right - coin supérieur droit,Top Left - coin supérieur gauche.
Valeur par défaut : Bottom Right.
Définit les types d’appareils sur lesquels le widget fixed doit être visible.
Valeurs disponibles :
Desktop,Mobile,Desktop + Mobile.
Valeur par défaut : Desktop + Mobile.
After Cut-off Behavior
Définit le comportement du widget après le dépassement de l’heure de cut-off.
Valeurs disponibles :
Hide Widget - le widget sera masqué,Show After Cut-off Message - le widget affichera un message après cut-off.
Valeur par défaut : Show After Cut-off Message.
Customer Messages
Les messages prennent en charge des variables simples au format {{nazwa_zmiennej}}.
Variables disponibles pour les messages de livraison :
{{ship_date}},{{ship_date_from}},{{ship_date_to}},{{delivery_date}},{{delivery_date_from}},{{delivery_date_to}}.
Variables disponibles pour les messages cut-off :
{{cutoff_time}},{{cutoff_countdown}}.
Delivery Range Message
Modèle de message utilisé lorsque le calcul renvoie une plage de dates de livraison.
Valeur par défaut :
Livraison estimée : {{delivery_date_from}} - {{delivery_date_to}}
Single Delivery Date Message
Modèle de message utilisé lorsque la date de livraison la plus tôt et la plus tardive sont identiques.
Valeur par défaut :
Livraison estimée : {{delivery_date}}
Cut-off Countdown Message
Message affiché avant le dépassement de l’heure de cut-off.
Valeur par défaut :
Commandez dans les {{cutoff_countdown}} à venir et nous expédierons encore aujourd’hui.
After Cut-off Message
Message affiché après le dépassement de l’heure de cut-off si le champ After Cut-off Behavior est défini pour afficher un message.
Valeur par défaut :
Les expéditions du jour sont déjà closes. Nous expédierons le prochain jour ouvré.
Emails
Send Separate Email After Payment
Active l’envoi d’un e-mail séparé après le paiement de la commande.
Valeur par défaut : No.
Utilisation : permet de confirmer au client que le paiement a été reçu et que la commande est entrée en traitement.
Payment Confirmation Template
Modèle d’e-mail envoyé après le paiement.
Valeur par défaut :
estimated_delivery_date_emails_payment_template
Payment Confirmation Sender
Expéditeur du message après paiement. Le champ utilise les identités e-mail configurées dans Magento.
Valeur par défaut :
sales
Allow Email After Delivery Date Change
Permet d’envoyer au client un message après modification manuelle de la date de livraison dans le panneau d’administration.
Valeur par défaut : Yes.
Delivery Date Change Template
Modèle d’e-mail envoyé après modification de la date de livraison.
Valeur par défaut :
estimated_delivery_date_emails_date_change_template
Delivery Date Change Sender
Expéditeur du message relatif au changement de date de livraison.
Valeur par défaut :
sales
Default Apology Message
Texte d’excuses par défaut utilisé dans le message concernant le changement de date de livraison.
Valeur par défaut :
Nous vous prions de nous excuser, le délai de traitement de votre commande a été modifié.
Require Delay Reason
Exige la saisie d’une raison du retard lors d’une modification manuelle de la date dans la vue de la commande.
Valeur par défaut : No.
Utilisation : impose une meilleure discipline opérationnelle et facilite l’explication ultérieure des changements de date.
Send Automatically After Manual Date Change
Envoie automatiquement un message au client après modification manuelle de la date de livraison.
Valeur par défaut : No.
Si le champ est désactivé, l’administrateur peut décider de l’envoi en cochant la case dans la vue de la commande.
Gestion des attributs produit
Le module ajoute au produit un groupe d’attributs Estimated Delivery Date. Les attributs sont optionnels et ont une portée store view. S’ils ne sont pas renseignés, le module utilise les règles ou la configuration globale.
Les attributs produit ont priorité sur les règles calculées pour le produit. Cela permet de remplacer rapidement la date pour un SKU spécifique sans modifier les paramètres globaux.
Où modifier les attributs
Les attributs sont disponibles dans le panneau d’administration Magento :
Catalog > Products > Edit Product > Estimated Delivery Date
Si le groupe n’est pas visible dans un attribute set donné, il convient de vérifier la configuration de l’ensemble d’attributs produit dans Magento.
EDD Processing Days Min
Code attribut :
edd_processing_days_min
Nombre minimal de jours ouvrés nécessaires pour préparer un produit donné.
Utilisation : un produit disponible immédiatement peut avoir la valeur 0, tandis qu’un produit commandé auprès d’un fournisseur peut avoir par exemple 3.
EDD Processing Days Max
Code attribut :
edd_processing_days_max
Nombre maximal de jours ouvrés de préparation pour un produit donné.
Utilisation : si la préparation est variable, il est possible de définir par exemple un minimum de 2 et un maximum de 5 afin que le message affiche une plage plus prudente.
EDD Transport Days Min
Code attribut :
edd_transport_days_min
Nombre minimal de jours ouvrés de transport pour un produit donné.
Utilisation : pour les produits expédiés par un autre transporteur ou depuis un autre entrepôt.
EDD Transport Days Max
Code attribut :
edd_transport_days_max
Nombre maximal de jours ouvrés de transport pour un produit donné.
Utilisation : pour les produits volumineux, sur palette ou nécessitant une logistique spéciale.
EDD Static Customer Message
Code attribut :
edd_static_text
Message personnalisé pour le client affiché à la place du message issu de la configuration globale.
Exemples :
Produit fabriqué à la commande. Nous confirmerons le délai de livraison après l’achat.
Livraison estimée : {{delivery_date_from}} - {{delivery_date_to}}
L’attribut peut utiliser les mêmes variables de date que celles disponibles dans les messages globaux de livraison.
EDD Confidence
Code attribut :
edd_confidence
Niveau de confiance de la date enregistré avec la promesse de livraison.
Valeurs recommandées :
guaranteed - date garantie,likely - date probable,estimated - date indicative,unknown - absence d’estimation fiable.
L’implémentation actuelle enregistre cette valeur dans le résultat du calcul et dans les snapshots. Elle peut être utilisée par les modèles, les intégrations ou une personnalisation ultérieure des messages.
Disable Estimated Delivery Date
Code attribut :
edd_disable
Désactive l’affichage de la livraison estimée pour un produit donné sur la fiche produit et désactive également pour lui le widget cut-off.
Utilisation : produits indisponibles, produits nécessitant un devis de livraison individuel, services, produits en prévente ou marchandises pour lesquelles la boutique ne souhaite pas faire de promesse de date.
Bonnes pratiques de renseignement des attributs
Pour la plupart des produits, les attributs peuvent être laissés vides et la configuration globale peut être utilisée. Il est utile de les renseigner uniquement lorsqu’un produit donné diffère réellement du processus logistique standard.
Approche type :
- produits disponibles immédiatement : laisser vide ou définir un temps de préparation plus court,
- produits commandés auprès du fournisseur : définir une plage de préparation plus longue,
- produits volumineux : définir un transport plus long,
- produits personnalisés : utiliser un message statique personnalisé,
- produits sans date fiable : activer
Disable Estimated Delivery Date ou définir un message explicatif.
Après modification des attributs produit, il convient de rafraîchir le cache Magento si la boutique utilise le cache complet de page ou des mécanismes de cache supplémentaires dans le thème.
Import des jours fériés et des jours non travaillés
L’import est disponible dans le panneau d’administration :
Sales > Estimated Delivery Date > Import Holidays
Le fichier CSV doit contenir les colonnes :
code,name,type
Colonnes optionnelles :
date_from,date_to,month,day,country,region,postcode_pattern,shipping_method,source_code,store_id,scope,is_active
Types pris en charge dans la colonne type :
single - date unique, nécessite date_from,range - plage de dates, nécessite date_from et date_to,recurring - date récurrente, nécessite month et day.
Description de certains champs d’import :
code - code unique du jour férié ou du jour non travaillé,name - nom visible dans l’administration,type - type d’entrée : jour unique, plage ou date récurrente,date_from - date de début au format YYYY-MM-DD,date_to - date de fin au format YYYY-MM-DD,month - mois pour une entrée récurrente,day - jour du mois pour une entrée récurrente,country - code pays,region - région,postcode_pattern - motif de code postal,shipping_method - méthode de livraison,source_code - code source MSI,store_id - identifiant du store view,scope - périmètre d’application, par défaut shipping_delivery,is_active - statut d’activation de l’entrée.
Exemple :
code,name,type,date_from,date_to,month,day,country,store_id,is_activechristmas_2026,Christmas Break,range,2026-12-24,2026-12-26,,,,,1new_year,New Year,recurring,,,1,1,,,1
Gestion de la date dans la commande
La section Estimated Delivery Date est disponible dans la vue de la commande si le champ Show in Admin Order est activé.
L’administrateur peut modifier :
- la date d’expédition de début,
- la date d’expédition de fin,
- la date de livraison de début,
- la date de livraison de fin,
- le message client,
- la raison du retard.
Si l’e-mail après modification de la date est activé, l’administrateur peut cocher l’envoi d’un message avec des excuses et la nouvelle date. Le module enregistre l’historique des modifications avec l’ancienne et la nouvelle date, la raison ainsi que l’information sur l’envoi de l’e-mail.
REST API
Le module met à disposition les endpoints suivants :
GET /rest/V1/estimated-delivery/product/:skuGET /rest/V1/estimated-delivery/cart/:cartIdGET /rest/V1/estimated-delivery/guest-cart/:cartIdGET /rest/V1/estimated-delivery/order/:orderId
L’API renvoie notamment la date d’expédition, la date de livraison, le message, le niveau de confiance, le code de la règle, la date de calcul et la source des données. Pour une commande, le module renvoie le snapshot enregistré s’il existe.