Jump to content

Calcul des prix dégressifs sur le HT et non le TTC : erreur de montants totaux


Recommended Posts

Bonjour à tous,

Je rencontre une erreur assez sérieuse qui me pose moult soucis vis à vis de mon client... Et je n'ai malheureusement plus assez de cheveux pour continuer à me les arracher !!
Sur certains produits, nous appliquons des prix dégressifs en € sur le montant en fonction des quantités dans le panier.
Nous gérons les prix HT et TTC car certains clients récupèrent la TVA.
Nous sommes en 1.2.5.0 et sommes un peu contraints à rester sur cette version suite à pas mal d'adaptations pour le client (aucune de ces adaptations ne concerne la gestion des taxes ou les tarifs produits, juste du design global et de la gestion spécifique des transporteurs par type de produits).

Pour l'exemple ici montré sur le screenshot, nous avons un produit au prix unitaire de 10€.
Pour une quantité de 12, la réduction appliquée est de 2€TTC / produit.
Le total est donc réduit de 120 € à 96 € (réduction de 2€ x 12 soit 24€).
Le montant total indiqué dans le bloc panier est bon. On a bien 96 €.
Étant donné ce résultat, il semble donc que la réduction s'applique bien sur le tarif TTC du produit. Du moins pour le total du panier.

Mais...
A l'affichage du panier, le prix unitaire HT indiqué est issu de la réduction appliquée sur le prix HT du produit. Alors que pour le total des produits, elle est appliquée sur le prix TTC de base.
Du coup, le total HT est faux et ne correspond plus au tarif TTC/1.196.

Si vous jetez un œil au screenshot :
Tarif produit de base à 10€
Réduction de 2€ à partir de qté 12
Total TTC = 96 € OK
Prix unitaire HT = 6.36€ au lieu de 6.69€ (8€/1.196)
Total produits HT = 76.33€ au lieu de 80.26€ (OK c'est bien 12 x 6,36 € mais c'est quand même faux car le HT est faux)
Total produits TTC est OK

Ayant vu pas mal de post relatif à l'application du dégressif sur le HT et non le TTC, j'ai tenté de modifier cette valeur de réduction, ainsi convertie à 1.67€ HT, ce qui nous donne dans le panier un tarif unitaire HT bon (réduction appliquée sur le HT qui passe bien à 6.69€), mais un prix total TTC faux et correspondant au tarif unitaire TTC - réduction HT ! x qté --> c'est donc un total faux...

On retrouve le même type d'erreur lors de la génération des factures. Au départ le client m'a simplement alerté sur les erreurs de TVA sur les factures clients alors que le total payé était le bon.
J'ai alors en premier lieu jeté un oeil à la génération des factures, mais le problème vient de plus haut : je pense la première cause est la manière d'appliquer le dégressif qui est faite de 2 manières différentes dans 2 endroits différents : pour l'affichage du prix unitaire, il considéré HT et appliqué sur le HT, mais pour le prix total, il est considéré TTC et appliqué sur le TTC.

Il faut vraiment que je trouve une solution, pour moi c'est l'impasse et je suis en position délicate : les factures sont archi fausses, la TVA est erronnée, les montants HT sont tous faux aussi (si on met une réduction TTC) ou les montants TTC sont faux (si on met une réduction HT). Malheureusement je ne suis pas assez chevronné pour trouver à quel endroit ces éléments sont calculés.

Une alternative éventuelle serait de supprimer la gestion des taxes de partout, et ajouter une ligne personnalisée dans la facture avec un calcul manuel de la TVA, mais ce n'est pas une solution très élégante.

Please help urgently !!

37531_4xQRNG5ECXNdhXp7yhQv_t

Link to comment
Share on other sites

as-tu essayé en appliquant une remise en pourcentage ?

sinon, comme les attributs sont calculés en TTC et les produits en HT, l'erreur peut aussi provenir de là.
il faut créer une nouvelle variable qui calcule le prix de l'attribut en HT puis applique la remise. etc..

Link to comment
Share on other sites

Bonjour Fabrice,

Merci beaucoup de ta réponse aussi rapide.
Effectivement je viens de faire un test avec une réduction en pourcentage, et comme de toute évidence que l'on applique un pourcentage sur le HT ou sur le TTC, ça revient strictement au même. Donc dans ce cas ça marche bien et les montants HT/TTC unitaires et totaux sont bons. C'est une très bonne idée.

Par contre comme on a tout un tas de réductions et que l'on pratique des réductions en € entiers, un pourcentage donne parfois des erreurs car on a droit qu'à 2 décimales. Est-ce simple de pouvoir valider un pourcentage à plus de décimales sans avoir d'erreurs d'arrondi ?
Je crois me souvenir qu'au début nous avions opté pour les pourcentages mais avions souvent des erreurs de paiement sous paypal dues à une erreur d'arrondi : genre 120.76 € commandé (du moins affiché) et panier envoyé à Paypal 120.77 €. Et passer à des réductions sur le montant a réglé ce problème.
J'ai vu circuler aussi pas mal de choses sur les erreurs d'arrondi, de mémoire mettre à certains endroits floatval au lieu de intval (à quelque chose près !!), est-ce qu'on peut palier à ce souci de cette manière ? Ou y-a-t-il une manière de rendre l'erreur de paiement plus "tolérante" ?

PS. Ce qui n'empêche que cette erreur de calcul est assez grave tout de même. Elle doit se produire pour tous ceux qui utilisent les taxes et des dégressifs en montant et non en %. Curieusement je ne vois que très peu de post sur ce sujet précis. Indépendamment de l'usage d'une solution palliative, c'est quand même préoccupant.

Link to comment
Share on other sites

perso, je n'utilise pas les remises en € mais bien en pourcentages.

comme mentionné plus haut, je pense que ça vient du fait que les attributs sont calculés en TTC et le produit en TTC.

pour ce qui est de l'erreur paypal, cela mérite en effet qu'on s'y colle, mais comme j'ai à peu près 1 à 3% d'erreur paypal (même si le process fonctionne et que c'est bien paypal qui a tout juste, et que c'est bien le BO qui a faux et qui considère l'erreur), je n'ai pas traité cette question comme une priorité. je corrige simplement manu dans la BDD.
Je suis moi aussi en 1.2.5 (largement) modifiée. mais nul doute, que, lorsque j'aurais un peu de temps, je m'y mettrais ; ou je mettrais EjectCore (éditeur du module panier en signature) sur le coup, histoire de m'adresser à des mecs compétents. mais cela a déjà été un vrai casse-tête de considérer et corriger cela dans le module panier. Si tu veux des infos, je t'envois un message avec mon ID skype. tu pourras ainsi me contacter.

Link to comment
Share on other sites

  • 2 weeks later...

Hello Fabrice,

En lisant ton dernier post, tu parle de solution "trouvées" pour éviter justement des prb's sur le montant total lors de rabais en %.

J'ai ce prb sur la partie Groupe REV (HT),
La base de prix est sur le prix TTC du produits, j'ai plusieurs groupes, le premier étant les "clients normaux" (qui est secondaire pour moi) en TTC, affichage en TTC, Là il n'y pas de prb.

L'un des suivants est le groupe REV, prix en HT, et là il y a parfoit des erreurs de 1.-cts sur le final. Idem prix dégressifs en % suivant la quantité.

Presta, (à ce que je commence à comprendre) prend la base de calcul suivant le prix HT ou TTC suivant le setting du groupe.
Ce qui peux créer ce prb d'arrondi

Si jamais tu avais plus d'info là dessus, je serais preneur d'info sur ce sujet.
Merci et bon week end

Maurice

Link to comment
Share on other sites

  • 3 weeks later...

Bonjour,

Je cherche aussi une solution.

Je fais des remises pro en % pour 3 groupes (5, 8 et 10 %)... prix public ou pro le tout en TTC.

Les remises fonctionnent sur l'affichage des prix dégressifs, mais quand un pro sélectionne une quantité qui donne droit à un prix dégressifs, le panier affiche un tarif faux de quelques centimes d'euro. Par contre pas de problème sur un compte public.

Je suis en presta 1.3.6.

Est-ce que ce problème à été résolu en 1.3.7 ?

Sinon quel est la solution ?

Link to comment
Share on other sites

J'ai le sentiment qu'il n'y a pas vraiment de solution apportée à ce bug de TVA.
Ça semble connu comme aléa, vu le nombre de threads qu'on voit passer sur le sujet un peu partout, mais nulle part je n'ai vu de solution envisagée ni de réaction comme "on va tâcher de trouver un correctif". Tous ceux qui le rencontrent se plaignent, signalent, demandent et redemandent, mais aucun retour.

Compte tenu de l'importance de ce bug (erreurs monumentales sur les calculs de taxes et sur les factures, c'est quand même sacrément important !), c'est bien déplorable.

Alors après, sourde oreille ou non, je ne saurais dire.
Simplement que ce bug de calcul de taxes sur prix dégressifs est bien connu : d'un coté il est calculé sur un montant de dégressif considéré HT , d'un autre sur un dégressif entendu TTC. Bref, seul Fabrice m'a répondu en me proposant un module alternatif qui semblerait peut-être pouvoir corriger l'erreur. Soit dit en passant, je ne conçois pas qu'on soit contraint à passer par un module alternatif pour corriger une erreur de noyau.

Pierre

Link to comment
Share on other sites

  • 4 weeks later...

Bonjour

même raison pour m'inscrire sur ce post que celle donnée par Michel.
Pourtant, les problèmes de calcul sont signlés depuis TRES longtemps, et étaient sensés avoir été résolus.
Mais pour le dégressif, pareil, écart notable entre les montants affichés sur la ligne produit et le total TTC.
Amicalement

Link to comment
Share on other sites

  • 2 months later...

Bonjour pierrot-01,
Nous avons corrigé le calcul des taxes dans le cas de l’utilisation d’un code promo en pourcentage. Les factures de la version 1.4.3, téléchargeable sur notre site depuis ce matin : http://www.prestashop.com/fr/downloads/ sont donc bien conformes.

Je n'ai pas connaissance d'autres corrections à apporter mais s'il en existe encore dans cette nouvelle version de PrestaShop, je m'assurerai de les faire corriger au plus vite.

Link to comment
Share on other sites

  • 9 months later...

Bonjour,

 

je me permet de relancer ce post car je rencontre ce même problème lorsque je fais un prix spécifique en montant et non en pourcentage alors que je suis en version 1.4.5.

 

Comment est il possible de corriger ce problème?

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...