Dans un entrepôt, le problème n'est pas de savoir quoi préparer : c'est de savoir dans quel ordre, et combien à la fois. Odoo libère les préparations dès que le stock est disponible — ce qui produit une file que personne n'ordonne et une charge que personne ne lisse.
Dix-huit modules communautaires introduisent les canaux de libération, et terminent le dépôt stock-logistics-release-channel.
Résumé
Le module central crée les canaux de libération : les préparations y sont regroupées et libérées par vagues. Il dépend du mécanisme de disponible à promettre et des travaux de fond.
Cinq modules traitent les critères d'affectation : le transporteur, un transporteur de remplacement, les pays et régions du destinataire, la libération automatique, et le calendrier d'entrepôt.
Cinq modules traitent le temps : une heure limite de commande, une heure de fin de traitement propagée aux préparations, un délai d'expédition, la fenêtre de livraison du client, et les plans associés.
Trois modules traitent les plans de préparation : un plan par canal fondé sur des plages horaires, et deux colles le reliant à l'heure de fin et au délai d'expédition.
Quatre modules enfin portent les canaux côté vente : le canal sur la commande, son lien au transporteur, le calcul de la date promise d'après les canaux disponibles, et sa variante avec délai d'expédition. Un module relie enfin les canaux aux avis d'expédition.
L'essentiel
- Des canaux de libération : les préparations libérées par vagues, non au fil de l'eau.
- Une heure limite de commande par canal.
- Une heure de fin de traitement propagée aux préparations.
- Des plans de préparation par plages horaires.
- L'affectation par transporteur, pays ou région.
- La date promise au client calculée d'après les canaux disponibles.
- La fenêtre de livraison du client prise en compte.
- Le calendrier d'entrepôt respecté dans les délais.
Ce que ces modules ajoutent à l'instance
| Famille | Modules | Nombre |
|---|---|---|
| Socle | stock_release_channel | 1 |
| Critères d'affectation | stock_release_channel_delivery, stock_release_channel_carrier_alternative, stock_release_channel_partner_address, stock_release_channel_auto_release, stock_release_channel_warehouse_calendar | 5 |
| Temps | stock_release_channel_cutoff, stock_release_channel_process_end_time, stock_release_channel_shipment_lead_time, stock_release_channel_partner_delivery_window | 4 |
| Plans de préparation | stock_release_channel_plan, stock_release_channel_plan_process_end_time, stock_release_channel_plan_shipment_lead_time | 3 |
| Côté vente | sale_stock_release_channel, sale_stock_release_channel_delivery, sale_stock_release_channel_delivery_date, sale_stock_release_channel_delivery_date_plan_shipment_lead_time | 4 |
| Avis d'expédition | stock_release_channel_shipment_advice | 1 |
Les menus : Inventaire ▸ Opérations ▸ Canaux de livraison et ses Plans de préparation, Inventaire ▸ Configuration ▸ Gestion de l'entrepôt ▸ Canaux de livraison.
Libérer par vagues, pas au fil de l'eau
Un entrepôt qui libère chaque préparation dès que son stock est disponible travaille dans le désordre : les préparations arrivent par ordre de disponibilité, pas par ordre de départ camion. Les équipes préparent des commandes qui partiront demain avant celles qui partent dans deux heures.
stock_release_channel (version 18.0.1.7.1) introduit des canaux de libération : les préparations y sont affectées selon des critères, et libérées quand on décide — par vague, par heure, ou automatiquement.
Il dépend du mécanisme de disponible à promettre — qui distingue le stock physique du stock engagé — et des travaux de fond, parce que libérer une vague de deux cents préparations est une opération longue.
Cinq modules fournissent les critères d'affectation :
stock_release_channel_deliveryaffecte par transporteur : un canal pour le messager du matin, un autre pour l'affréteur de l'après-midi.stock_release_channel_carrier_alternativegère un transporteur de remplacement.stock_release_channel_partner_addressfiltre par pays et régions du destinataire.stock_release_channel_auto_releaseajoute un mode de libération automatique au canal.stock_release_channel_warehouse_calendarrelie le canal au calendrier d'entrepôt — les jours ouvrés.
Le temps : heure limite, fin de traitement, délai
stock_release_channel_cutoff ajoute une heure limite de commande au canal : au-delà, la commande part sur la vague suivante.
L'heure limite est la promesse commerciale la plus courante de la logistique — « commandé avant 14 h, expédié le jour même » — et celle qu'aucun ERP ne sait tenir sans canaux : il faut savoir à quelle vague une commande se rattache au moment où le client la passe.
stock_release_channel_process_end_time définit une heure de fin de traitement sur le canal et la propage aux préparations concernées. Il dépend du fuseau horaire du partenaire — parce qu'une heure limite n'a de sens que dans un fuseau.
stock_release_channel_shipment_lead_timeajoute un délai d'expédition au canal, en s'appuyant sur le planificateur d'avis d'expédition et le calendrier d'entrepôt.stock_release_channel_partner_delivery_windowprend en compte la fenêtre de livraison du client — les créneaux où il accepte de recevoir.
Les créneaux de livraison par client sont traités dans expédier au quotidien.
Les plans de préparation
stock_release_channel_plan crée des plans de préparation par canal, fondés sur des plages horaires réutilisables. Menu sous Inventaire ▸ Opérations ▸ Canaux de livraison ▸ Plans de préparation.
Deux colles le relient aux modules de temps : stock_release_channel_plan_process_end_time à l'heure de fin de traitement, et stock_release_channel_plan_shipment_lead_time au délai d'expédition.
Le plan est ce qui transforme les canaux en organisation : au lieu de libérer à la main quand quelqu'un y pense, le canal se libère selon un plan horaire — et la charge de l'entrepôt devient prévisible d'une journée sur l'autre.
stock_release_channel_shipment_advice permet enfin de planifier des avis d'expédition pour les préparations prêtes et libérées.
Côté vente : la date qu'on promet
Quatre modules portent les canaux jusqu'à la commande de vente :
sale_stock_release_channelrelie le canal à la commande. README réduit à sa catégorie.sale_stock_release_channel_deliveryy ajoute le transporteur. README réduit à sa catégorie.sale_stock_release_channel_delivery_date(version 18.0.1.0.3) calcule la date attendue d'après les canaux disponibles.sale_stock_release_channel_delivery_date_plan_shipment_lead_timeen est la variante tenant compte du délai d'expédition du plan.
Le troisième module est l'aboutissement de tout le dépôt : la date annoncée au client au moment de la commande est calculée depuis l'organisation réelle de l'entrepôt — heure limite, vague, calendrier, délai transporteur. C'est la différence entre une date promise et une date tenue.
Sans ces modules, la date de livraison d'Odoo est un calcul de délais théoriques. Avec, c'est une conséquence de la charge réelle.
Limites connues
- Deux modules ont un README réduit à leur catégorie :
sale_stock_release_channeletsale_stock_release_channel_delivery. - Le socle dépend du mécanisme de disponible à promettre : un changement de fond dans la façon dont Odoo réserve le stock, à éprouver avant de s'engager.
- Les canaux sont une organisation avant d'être un paramétrage : les définir suppose de connaître ses départs camion, ses heures limites et ses capacités de préparation.
- La libération automatique retire la décision humaine : à n'activer qu'une fois les critères éprouvés sur plusieurs semaines.
- L'heure limite n'a de sens que dans un fuseau horaire : le module de fin de traitement dépend du fuseau du partenaire pour cette raison.
- Le calcul de la date promise devient un engagement : une date calculée et affichée au client est une date qu'il attend. Vérifier le calcul sur des cas réels avant de l'exposer.
- La chaîne de dépendances est longue : calendrier d'entrepôt, plages horaires, planificateur d'avis d'expédition, fenêtres de livraison client, fuseau du partenaire.
- Trois colles existent uniquement pour faire cohabiter les modules de temps : signe qu'il faut choisir sa combinaison, non tout installer.
Identité technique
Les dix-huit modules viennent du dépôt OCA stock-logistics-release-channel, branche 18.0 — dont tous les modules sont désormais documentés ici —, tous en licence AGPL-3. Les dépendances externes : stock_available_to_promise_release pour le socle, queue_job pour les travaux de fond, stock_warehouse_calendar pour les jours ouvrés, base_time_window pour les plages horaires, shipment_advice_planner pour les avis d'expédition, stock_partner_delivery_window pour les fenêtres client, partner_tz pour les fuseaux, delivery et sale pour les transporteurs et les commandes.
Voir aussi expédier au quotidien et regrouper, scinder et suivre les transferts.
Questions fréquentes
Pourquoi ne pas libérer les préparations dès que le stock est disponible ?
Parce que les préparations arrivent alors par ordre de disponibilité, pas par ordre de départ camion : les équipes préparent des commandes qui partiront demain avant celles qui partent dans deux heures. stock_release_channel les regroupe en canaux libérés par vagues.
Peut-on tenir une promesse « commandé avant 14 h, expédié le jour même » ?
C'est précisément l'objet de stock_release_channel_cutoff : une heure limite par canal, au-delà de laquelle la commande part sur la vague suivante. Aucun ERP ne tient cette promesse sans canaux — il faut savoir à quelle vague une commande se rattache au moment où le client la passe.
La date de livraison annoncée au client peut-elle tenir compte de la charge réelle ?
Oui, avec sale_stock_release_channel_delivery_date : la date attendue est calculée d'après les canaux disponibles — heure limite, vague, calendrier, délai transporteur. Sans lui, la date d'Odoo est un calcul de délais théoriques. Vérifiez le calcul sur des cas réels avant de l'exposer : une date affichée devient un engagement.
Sur quels critères affecter une préparation à un canal ?
Cinq modules les fournissent : le transporteur, un transporteur de remplacement, les pays et régions du destinataire, le calendrier d'entrepôt, et un mode de libération automatique. Les canaux sont une organisation avant d'être un paramétrage : les définir suppose de connaître ses départs camion et ses capacités de préparation.
Faut-il installer tous les modules de ce dépôt ?
Non. Trois modules du dépôt sont des colles existant uniquement pour faire cohabiter les modules de temps — heure de fin de traitement, délai d'expédition, plans. C'est le signe qu'il faut choisir sa combinaison selon son organisation, pas tout installer.
Se faire accompagner
Les canaux de libération sont le seul mécanisme qui permette de promettre une date de livraison et de la tenir, parce qu'ils relient la promesse commerciale à l'organisation réelle de l'entrepôt. C'est aussi un projet d'organisation : les canaux se dessinent sur les départs camion, pas dans un écran de configuration.
Nous partons donc de vos départs réels — heures, transporteurs, capacités de préparation — avant d'installer quoi que ce soit, et nous n'exposons la date calculée au client qu'après l'avoir vérifiée plusieurs semaines en interne. Voir les prestations d'Atalios Consulting ou demander un rappel.
Pour aller plus loin
En résumé
Dans un entrepôt, le problème n'est pas de savoir quoi préparer mais dans quel ordre et combien à la fois. Odoo libère dès que le stock est disponible — donc par ordre de disponibilité, pas par ordre de départ camion. Dix-huit modules introduisent les canaux. Parlons de votre organisation d'entrepôt.