Skip to main content

Marge et Prix suggéré des articles v16

Une suite de module créés par le GRAP, permets des fonctionnalités similaires.

Ils présentent une alternative aux modules sale_suggested_price et sale_adapt_price_wizard développés par Coop IT Easy pour la v12 (voir ici)

Le flux dude grapmise prévoità jour des prix en v16 est basé sur les modules suivants. 

Mise à jour du prix d'achat et du coût

Mise à jour du prix d'achat

Via le PO (fruits et légumes)

TODO

Via un import de la liste des prix de ventes (gros fournisseur, sec)

Dans Achat>Configuration>Prix fournisseurs, on voit toutes les informations fournisseurs (produit, fournisseur, prix, quantité minimale, unité, etc.). Ce sont les mêmes informations que ce que l'ont voit dans l'onglet Achat des fiches produits. 

Ici, on peut importer les prix d'achat depuis un fichier excel pour mettre à jour en masse les prix d'achat des articles.

Mise à jour du coût

Il faut que les catégories de produit soient configurées pour que le coût soit calculés directement depuis le prix d'achat (module product_cost_from_supplier_price)

Aller dans Achat>Configuration>Catégorie d'article et pour toutes, les catégories, sélectionner comme méthode de coût Standard price (from Main Supplier's price). 

image.png

Le coût est alors automatiquement calculé à partir du prix d'achat. Le coût est égal au prix d'achat, sauf si les unités de mesure d'achat diffèrent des unités de mesure de ventes, le coût est alors convertit en unité de mesure de vente. 

Calculer les prix de vente avec des marges

Le module product_margin_classification est conçu pour étendre le calcul du prix de vente dans Odoo.

Ce module ajoute un nouveau modèle 'Margin Classifications' lié aux produits. Une classification de marge a un champ 'Marge' et des champs supplémentaires pour gérer la méthode de calcul, comme dans les éléments des liste de prix (Marge, méthode d'arrondi…). La marge est calculée à partir du champ Coût.

Si un produit a une classification de marge définie et que le prix théorique n'est pas le même que le prix de vente, un champ supplémentaire "Prix théorique" est affiché, en fonction de la classification de marge. Un bouton est disponible pour modifier le prix de vente.

Le "prix théorique" corresponds au "prix suggéré" dans le module sale_suggested_price

image.png

 

Dans le formulaire de classification des marges, l'utilisateur peut modifier les champs de calcul.

Le taux de marge et le taux de markup sont deux manière de calculer une marge. L'une prends comme référence le prix de vente, l'autre le coût.
Par exemple : un objet qui coute 2€ et qui a un taux de marge de 50% sera vendu à 4€. En effet le 50% = 100*(4-2)/4. Cela corresponds à une taux de markup de 100% : 100% = 100*(4-2)/2. 

  • Taux de marge (profit margin) : le calcul se fait en fonction du prix de vente.
    • C'est un taux de variation par rapport au prix de vente.
    • Marge = 100 * (prix de vente - coût) / prix de vente
  • Taux de markup : le calcul se fait en fonction du coût.
    • C'est un taux de variation par rapport au coût.
    • markup = 100 * (Prix de vente - coût) / coût
  • Surcharge : montant fixe à ajouter (ou soustraire) au prix.
  • Arrondi : unité d'arrondi du prix. Il est Appliqué après les marges et markup, mais avant la surcharge.

Trois boutons sont disponibles pour appliquer les prix théoriques :

  • à tous les produits,
  • uniquement pour les produits trop chers
  • uniquement pour les produits pas assez chers

image-1684919630095.png

En cliquant sur les Smart buttons dans la partie droite du formulaire, tous les produits seront affichés et l'utilisateur pourra facilement modifier les prix.

image-1684919813710.png

L'utilisateur peut également voir facilement les produits dont les marges sont incorrectes dans l'arborescence de classification des marges :

image-1684919824362.png

Vous pourriez être intéressé par les fonctionnalités natives des listes de prix, qui permettent de fixer les prix de vente sur la base des prix de revient. Le principal problème de cette conception est que le prix de vente change automatiquement lorsque le prix de revient change, ce qui n'est pas souhaitable dans certains cas. Par exemple, si vous avez un magasin, vous voulez changer les prix de vente lorsque les clients ne sont pas dans le magasin, et après avoir changé les étiquettes dans le magasin.

Différence principales avec le flux de sale_suggested_price

  • La mise à jour du prix fournisseur et du coût se fait via la facture, plutôt que via la demande de prix. La raison est que lors d'un flux d'achat théorique, les utilisateurs ne connaissent pas à l'avance le prix exact auquel ils achèteront le produit, surtout dans le cas de fruits et légumes.
  • Chaque produit est assigné à un type de marge, définit dans le modèle "Margin Classification", et non pas par fournisseur ou par catégorie d'article. Une réflexion est néanmoins en cours pour ajouter cette fonctionnalité au module product_margin_classification.
  • Le calcul de la marge se fait à partir du coût, pas du prix fournisseur.
  • Le calcul des marges peut se faire de manière beaucoup plus fine
    • Le choix taux de markup vs taux de marge se fait par Margin Classification, plutôt que de manière globale
    • L'arrondi peut être configuré (pas uniquement à 5 centimes)
    • Possibilité d'ajouter une majoration au prix en plus du taux de marge appliqué

Mise à jour du prix lors de la réception de la facture. 

Ce flux est utilisé par le GRAP, mais n'est pas utilisé car nos clients car les prix de ventes doivent pouvoir être mis à jour dès la réception des produits (sans attendre la facture). 

Pour une mise à jour du prix lors de la réception de la facture, il faut utiliser les modules suivants (pas testés) :