Documentation9 min de lecture

Canaux de livraison : lisser la charge d'un entrepôt sur la journée

Le module OCA `stock_release_channel` (dépôt `stock-logistics-release-channel`, version 18.0.1.7.1, licence AGPL-3) introduit des **canaux de libération** pour piloter la charge d'un entrepôt : les préparations ne sont pas libérées dès qu'elles sont prêtes, mais regroupées par canal et libérées quand on décide. Dix-sept autres modules traitent l'heure limite, les plans de préparation et la date promise au client.

Préparation de commandes organisée en vagues dans un entrepôt

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

FamilleModulesNombre
Soclestock_release_channel1
Critères d'affectationstock_release_channel_delivery, stock_release_channel_carrier_alternative, stock_release_channel_partner_address, stock_release_channel_auto_release, stock_release_channel_warehouse_calendar5
Tempsstock_release_channel_cutoff, stock_release_channel_process_end_time, stock_release_channel_shipment_lead_time, stock_release_channel_partner_delivery_window4
Plans de préparationstock_release_channel_plan, stock_release_channel_plan_process_end_time, stock_release_channel_plan_shipment_lead_time3
Côté ventesale_stock_release_channel, sale_stock_release_channel_delivery, sale_stock_release_channel_delivery_date, sale_stock_release_channel_delivery_date_plan_shipment_lead_time4
Avis d'expéditionstock_release_channel_shipment_advice1

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_delivery affecte par transporteur : un canal pour le messager du matin, un autre pour l'affréteur de l'après-midi.
  • stock_release_channel_carrier_alternative gère un transporteur de remplacement.
  • stock_release_channel_partner_address filtre par pays et régions du destinataire.
  • stock_release_channel_auto_release ajoute un mode de libération automatique au canal.
  • stock_release_channel_warehouse_calendar relie 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_time ajoute 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_window prend 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_channel relie le canal à la commande. README réduit à sa catégorie.
  • sale_stock_release_channel_delivery y 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_time en 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_channel et sale_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.

Documentation OCALogistiqueOdoo Community

Partager

Fiches connexes

Baies de serveurs dans une salle machine
Le module OCA `queue_job` (dépôt `queue`, version 18.0.3.4.1, licence LGPL-3) ajoute à Odoo une **file de travaux de fond** avec ses canaux, ses fonctions et ses tâches, sous le menu **File d'attente des tâches** : c'est la brique dont dépendent plus de quarante modules communautaires, et la première à surveiller en exploitation. Vingt-six autres modules traitent les composants, la configuration hors base, l'impression serveur et l'IoT.
Lire la suite
Documentation OCA, Exploitation
Câbles réseau branchés sur un commutateur
Le module OCA `endpoint` (dépôt `web-api`, version 18.0.1.1.4, licence LGPL-3) permet de **déclarer un point d'entrée HTTP depuis l'interface**, sous **Paramètres ▸ Technique ▸ Endpoints** : une adresse, une méthode, un traitement — sans écrire de module. Vingt-trois autres modules traitent le cache, les imports par sessions, les échanges de factures et l'agenda.
Lire la suite
Documentation OCA, Intégration