Frais de port : la ligne qui manque à la marge Odoo
En brefDans Odoo, les frais de port apparaissent comme une ligne de livraison sur la commande : c'est le montant facturé au client, pas ce que vous payez au transporteur. Par défaut, cette ligne n'a pas de coût, et Odoo la compte entièrement en marge. Le port réellement payé arrive sur les factures du transporteur, à part. Résultat : la marge Odoo ignore le port, et une livraison offerte ne la baisse pas d'un centime.
Port facturé au client, port payé au transporteur : deux montants différents
Le port facturé, c'est ce que le client paie pour la livraison. Le port payé, c'est ce que le transporteur vous facture pour le même colis. Les deux montants sont rarement égaux, et seul le premier apparaît sur la commande.
| Cas (exemple fictif) | Port facturé au client | Port payé au transporteur | Effet sur ce qu'il vous reste |
|---|---|---|---|
| Livraison payante | 4,90 € | 8,00 € | −3,10 € |
| Livraison offerte | 0,00 € | 8,00 € | −8,00 € |
| Retrait en boutique | 0,00 € | 0,00 € | 0,00 € |
À ces montants s'ajoute souvent l'emballage d'expédition : carton, calage, étiquette. Il se paie à chaque colis, même quand la livraison est offerte.
Où les frais de port apparaissent dans Odoo
Dans Odoo, le port apparaît à deux endroits qui ne se parlent pas : la ligne de livraison sur la commande du client, et la facture du transporteur dans vos achats.
Sur la commande : la ligne de livraison
Une fois les modes de livraison activés (Inventaire, Configuration, Paramètres), le bouton « Ajouter l'expédition » d'une commande ajoute une ligne avec le produit de livraison du mode choisi. Sur la boutique Odoo, le client choisit lui-même son mode de livraison, et la même ligne est créée. Le prix de cette ligne vient du mode de livraison :
- Prix fixe : le même montant pour toutes les commandes ;
- Fondé sur des règles : un barème selon le poids, le volume, le montant ou la quantité ;
- Transporteur connecté : Odoo demande le tarif au transporteur (bouton « Obtenir le prix »).
Deux réglages comptent pour la marge. « Gratuit si le montant de la commande est supérieur à » met la ligne à 0 € au-dessus d'un seuil. « Marge sur le taux » et « Marge additionnelle » majorent le tarif du transporteur d'un pourcentage ou d'un montant fixe.
Dans les achats : la facture du transporteur
Le port que vous payez arrive sur une facture fournisseur du transporteur, souvent une par semaine ou par mois, pour des centaines de colis. Elle va en comptabilité. Elle n'est rattachée à aucune commande client.
Pourquoi la marge Odoo ne compte pas le port
La marge Odoo ne compte pas le port payé, parce qu'elle ne regarde que les lignes de la commande : prix de vente moins coût du produit. Or le produit de livraison créé par défaut par Odoo n'a pas de coût.
- Livraison payante : les 4,90 € facturés au client entrent dans la marge comme une vente sans coût. Odoo vous crédite 4,90 € de marge sur un colis qui vous coûte 8 €.
- Livraison offerte : la ligne est à 0 €, sans coût. La marge ne bouge pas. Les 8 € payés au transporteur n'apparaissent nulle part dans la commande.
Prenons une paire de chaussures vendue 60 € par Atelier Nord, une boutique de mode. C'est un exemple fictif.
Le port seul fait passer la marge de 32 € à 24 €. Avec les frais de paiement et la pub, la vente devient perdante. Le détail ligne par ligne est dans l'article rentable pour la plateforme, à perte pour vous, et la vue d'ensemble dans la marge dans Odoo : où la voir, et pourquoi elle est souvent fausse.
Calcul des frais de port : la méthode
Pour calculer vos frais de port par commande, divisez le total des factures de vos transporteurs sur un mois par le nombre de colis expédiés ce mois-là. Comparez ensuite avec le port facturé à vos clients.
- Choisissez un mois terminé, dont toutes les factures des transporteurs sont arrivées.
- Additionnez les factures des transporteurs de ce mois, hors taxes, suppléments compris (carburant, zones éloignées, colis hors format).
- Ajoutez l'emballage d'expédition : cartons, calage, étiquettes achetés sur le mois, ou une estimation par colis.
- Comptez les colis expédiés dans Odoo (livraisons validées du mois).
- Divisez : vous obtenez votre coût de port moyen par colis.
- Additionnez le port facturé aux clients sur le même mois (lignes de livraison des commandes) et comparez. L'écart est ce que le port retire à votre marge, et que la marge Odoo ne montre pas.
Ce que vous payez par colis dépend surtout du poids, des dimensions, de la destination, des options (suivi, assurance, point relais ou domicile) et de votre contrat. Une moyenne mensuelle suffit pour piloter. Calculez-la par transporteur si vos tarifs sont très différents.
Livraison offerte : combien elle coûte vraiment
La livraison offerte coûte le prix plein du colis, payé par vous au lieu du client. Rapportée au panier, la charge est lourde sur les petits paniers.
| Panier (exemple fictif, port payé 8 €) | Port offert | Part du panier |
|---|---|---|
| Panier de 50 € | 8 € | 16,0 % |
| Panier de 85 € (juste au-dessus d'un seuil de 80 €) | 8 € | 9,4 % |
| Panier de 150 € | 8 € | 5,3 % |
Le seuil de livraison gratuite se règle avec ce tableau en tête. Un seuil trop bas offre le port sur des paniers qui ne peuvent pas le payer. Et chaque point de pourcentage pris par le port réduit d'autant ce que vous pouvez dépenser en pub pour cette vente.
Mettre le port dans la marge
Pour que le port entre dans la marge, il faut lui donner un coût : sur le produit de livraison dans Odoo, ou dans un calcul à part qui part des factures des transporteurs.
- Dans Odoo : saisissez votre coût de port moyen dans le champ Coût du produit de livraison. La marge de chaque commande livrée retire alors ce montant, y compris quand la livraison est offerte. C'est une moyenne, pas le coût réel de chaque colis : mettez-la à jour chaque mois.
- Dans vos tarifs : si vous facturez le port, « Marge sur le taux » et « Marge additionnelle » permettent de répercuter vos frais d'emballage sur le client.
- Hors d'Odoo : calculez chaque mois le coût de port moyen (méthode ci-dessus) et retirez-le de la marge Odoo, avec les frais de paiement et la pub.
Le port n'est qu'une des charges qui manquent. Les frais de paiement en sont une autre : voir frais Stripe : ce qu'ils coûtent vraiment sur chaque vente. Et la pub, la plus variable, se mesure en coût par commande : calculez votre vrai coût par commande.
MargeDaily ajoute ces charges à la marge d'Odoo, chaque nuit, sans jamais modifier Odoo : port, frais de paiement, retours et pub. Le brief de 8 h, par email, WhatsApp ou Telegram, donne la marge après pub d'hier, produit par produit.
Questions fréquentes
Les frais de port sont-ils inclus dans la marge Odoo ?
Non. La ligne de livraison compte le port facturé au client comme une vente, sans coût par défaut. Le port payé au transporteur arrive sur une facture fournisseur, sans lien avec la commande, et n'entre pas dans la marge.
Comment Odoo calcule-t-il les frais de port d'une commande ?
Selon le mode de livraison : un prix fixe, un barème fondé sur des règles (poids, volume, montant), ou le tarif demandé à un transporteur connecté. Le montant obtenu devient le prix de la ligne de livraison.
Comment proposer la livraison gratuite dans Odoo ?
Sur le mode de livraison, cochez « Gratuit si le montant de la commande est supérieur à » et indiquez le seuil. La ligne de livraison passe alors à 0 €. Le transporteur, lui, vous facture toujours le colis.
Comment calculer ses frais de port par commande ?
Divisez le total des factures de vos transporteurs sur un mois, emballage compris, par le nombre de colis expédiés ce mois-là. Comparez avec le port facturé aux clients : l'écart est ce que le port retire à votre marge.
Peut-on faire apparaître le vrai coût du port dans la marge Odoo ?
En partie. Saisir un coût moyen sur le produit de livraison fait baisser la marge de chaque commande livrée de ce montant. Ce reste une moyenne, à mettre à jour chaque mois avec les factures des transporteurs.
Votre tracking est-il en règle ?
En une minute, le scanner vérifie votre consentement RGPD et votre GTM : balises qui partent avant l'accord, Consent Mode v2, pixels posés deux fois. Puis, en 15 minutes sur vos écrans, on compare vos plateformes pub à vos commandes Odoo, client ou pas.
Sources
- Odoo 19, modes de livraison et bouton « Ajouter l'expédition » : odoo.com/documentation/19.0/…/setup_configuration.html
- Odoo 19, facturation du port, prix fixe, règles, « Gratuit si le montant… », marge sur le taux : odoo.com/documentation/19.0/…/invoicing.html
- Code source d'Odoo 19 : produit de livraison par défaut sans coût (delivery_data.xml), ligne à 0 € en livraison gratuite (sale_order.py), marge calculée sur le coût du produit de chaque ligne (sale_margin) ; libellés français : delivery/i18n/fr.po
- Atelier Nord, la paire à 60 € et les montants de port sont des exemples fictifs.