📦 Guide d'Intégration des Entrepôts Personnalisés
Ce guide vous montrera comment intégrer votre propre système d'entrepôts et de stock avec le module Estimated Delivery dans PrestaShop. Aucune expérience en programmation n'est nécessaire : nous expliquerons tout clairement pour que chacun puisse suivre.
📝 Que Sont les Entrepôts Personnalisés ?
Dans certaines boutiques, les produits peuvent être expédiés depuis différents emplacements (entrepôts). Chaque entrepôt peut avoir différents niveaux de stock et délais d'expédition.
Le module Estimated Delivery vous permet de connecter votre propre système d'entrepôts en utilisant deux hooks simples.
🔧 Ce Que Vous Devez Faire
Vous devez créer un petit module (ou utiliser notre exemple) qui :
- Indique à Estimated Delivery quels entrepôts existent.
- Fournit la quantité en stock de chaque produit dans chaque entrepôt.
📌 Les Deux Hooks Que Vous Devez Utiliser
1. actionEDGetWarehousesList
Ce hook envoie une liste de vos entrepôts.
2. actionEDGetWarehouseQuantities
Ce hook envoie la quantité en stock d'un produit, répartie par entrepôt.
📂 Exemple de Sortie pour Chaque Hook
Hook 1 : Liste des Entrepôts
Votre module doit retourner des données comme ceci :
[
[
'id_warehouse' => 1,
'name' => 'Entrepôt Principal',
'priority' => 0, // Plus bas = priorité plus élevée
'default_warehouse' => true, // Un seul entrepôt peut être true
'location' => 'Barcelone'
],
[
'id_warehouse' => 2,
'name' => 'Entrepôt de Secours',
'priority' => 1,
'default_warehouse' => false,
'location' => 'Madrid'
]
];
Remarque : Seul un entrepôt peut avoir
default_warehouse => true.
Hook 2 : Quantités de Produit par Entrepôt
Lorsque Estimated Delivery demande le stock, votre module doit retourner quelque chose comme :
[
1 => 25, // L'entrepôt ID 1 a 25 unités
2 => 10 // L'entrepôt ID 2 a 10 unités
];
Ce Que Vous Recevez dans $params
Lorsque ce hook est appelé, vous recevrez :
| Clé | Description |
|---|---|
id_product | L'ID du produit que PrestaShop vérifie |
id_product_attribute | L'ID de la déclinaison (0 si le produit n'en a pas) |
🚀 Utilisez Notre Module Exemple
Nous avons créé un module prêt à l'emploi appelé edcustomwarehouses. Il montre exactement comment utiliser les hooks avec des données d'exemple.
Vous pouvez commencer avec cela et remplacer les données statiques par de vraies informations d'entrepôt.
Vous voulez le module ? Télécharger Ici (Lien vers ZIP ou dépôt)
✅ Liste de Vérification Finale
- Créez ou utilisez le module exemple (
edcustomwarehouses). - Enregistrez les deux hooks requis dans votre module :
actionEDGetWarehousesListactionEDGetWarehouseQuantities
- Retournez une liste d'entrepôts valide avec la structure correcte :
- Un seul entrepôt doit avoir
'default_warehouse' => true. - Tous les entrepôts doivent avoir un
id_warehouseunique.
- Un seul entrepôt doit avoir
- Retournez le stock correct du produit par entrepôt.
- Remplacez les données d'exemple statiques par vos données dynamiques d'entrepôt et de stock.
- Testez et vérifiez que les estimations de livraison s'affichent correctement sur les pages produit et panier.
Modules Associés
Estimated Delivery
Consultez-le sur 🌐smart-modules.com Consultez-le sur 🌐PrestaShop Addons
Dois-je ecrire un module complet pour utiliser les entrepots personnalises?
Vous avez besoin d'un petit module PrestaShop qui enregistre les deux hooks et retourne les bonnes donnees. Le module exemple edcustomwarehouses est fourni comme point de depart pret a l'emploi : remplacez simplement les donnees statiques par vos vraies informations d'entrepot et de stock.
Puis-je avoir plus de deux entrepots?
Oui. Le hook actionEDGetWarehousesList peut retourner autant d'entrepots que necessaire. Chacun doit avoir un id_warehouse unique et une valeur de priorite. Un seul entrepot peut avoir default_warehouse defini a true.
Que controle le champ priorite?
La priorite determine quel entrepot le module verifie en premier lors du calcul des estimations de livraison. Les chiffres plus bas signifient une priorite plus elevee : un entrepot avec priorite 0 est verifie avant celui avec priorite 1. Quand l'entrepot de plus haute priorite a assez de stock, le module utilise ses parametres de livraison.
Que se passe-t-il si un produit n'a pas de stock dans aucun entrepot?
Si tous les entrepots retournent zero stock pour un produit et que les commandes en rupture sont activees dans PrestaShop, le module applique les regles de delai pour rupture de stock configurees. Si les commandes en rupture ne sont pas activees, aucune estimation de livraison n'est affichee.
Des entrepots differents peuvent-ils avoir des jours de preparation ou des horaires de coupure differents?
Oui. Chaque entrepot de votre liste peut avoir ses propres parametres de livraison configures dans le module. Le module utilise les parametres de l'entrepot depuis lequel le produit sera expedie, determine par le stock et la priorite.
💬 Besoin d'Aide ?
Contactez le support de Smart Modules - nous serons heureux de vous aider !
🌐 Support pour les Achats sur smart-modules.com 🌐 Support pour les Achats sur le Marketplace Addons