Jump to content

Pb Arrondi des prix avec remise


Recommended Posts

Bonjour
Je suis en 1.2.5 et j'ai un gros problème pour le passage des commandes à mon module de télépaiement :
J'ai un produit qui coute 22,90
Si j'applique une remise de 15% et que j'en commande 5, prestashop me calcule :
Total : 114,50 (correct)
Remise : -17,18 (en réalité 17,175, arrondi )
Nouveau Total : 97,33 (en réalité 97,325, arrondi à 97,33 - c'est logique ...)

Hormis le fait que la soustraction ne soit pas correcte (il manque 1 centime), j'ai un souci pour passer ça à mon prestataire de télépaiement, qui me demande les PU et les quantités et les vérifie avec le total que je lui transmet.

Je transmet donc 22,90x0,85 = 19,467, arrondi à 19,47 mais 19,47*5 ça donne 97,35 !!

La transaction est donc refusée à cause de ces 2 centimes.

Ca m'embete evidemment beaucoup de passer à côté de commande à cause de ça.

J'ai parcouru le forum pendant des heures, j'y ai vu différentes solutions au niveau des classes Product et Discount, mais aucune n'a solutionnée mon pb.

J'hésite à modifier mon module de télépaiement pour lui passer en plus un produit "Arrondi" qui corrigera ce bug. Est ce la seule solution ?

Merci d'avance.

Link to comment
Share on other sites

bonjour

meme probleme avec PAYPAL
PAYPAL accepte le paiement mais prestshop emet une erreur car le paiement du panier prestashop est superieur au panier paypal

en fait presta envoie a paypal le panier avec prix directement remisés !
alors que presta fait son calcul final en fonction des prix normal et ensuite soustrait le % de remise ce qui occassionne une difference d'arrondi au final ...

vite une solution ? ;)

Link to comment
Share on other sites

J'ai résolu le problème, en refaisant les calculs manuellement dans mon outil de paiement en ligne.
Quelques centimes viennent s'ajouter au panier du client, ce qui n'est pas très correct, mais au moins ça marche.
Dans la partie commande du BO de prestashop, il m'informe que le montant est erroné mais ça n'est pas trop génant non plus.

Je te conseille donc de revoir le module paypal et de l'adapter de cette manière, si tu touches un peu en dev. C'est un bon moyen de ne plus passer à côté de commande.

Link to comment
Share on other sites

  • 1 year later...

Bonsoir,

Je suis moi même avec ce soucis d'arrondi lors de remise en pourcentage.
Par exemple:
Un produit à 0.55 euro sur lequel on applique une remise de 15% donne (0.4675 en réelle) arrondi a 0.47 euro pour le front de prestashop donc OK.
Ensuite si le client en achète 10 alors prestashop fait 0.4675 x 10 = 4.675 qu'il arrondi a 4.68 euro alors que l'on devrait avoir comme resultat le calcul de 0.47 x 10 = 4.7 euro.

Pour info, Paypal prend bien en compte les 4.7 euros et non 4.68.
De ce fait j'ai donc des erreurs de paiement de quelque centimes sur ces commandes.

Avez vous trouvez une solution pour que prestashop prenne bien en compte dés le début du calcul le prix arrondi et non le prix avec tous les chiffres après la virgule?

Je suis preneuse de toute réflexion qui pourront solutionner ce problème de remise en %tage, sans bien sur me demander de passer par une remise en montant qui bien sur elle ne génére aucune erreur de paiement.

Bien cordialement,

  • Like 1
Link to comment
Share on other sites

Bonsoir,

Je suis moi même avec ce soucis d'arrondi lors de remise en pourcentage.
Par exemple:
Un produit à 0.55 euro sur lequel on applique une remise de 15% donne (0.4675 en réelle) arrondi a 0.47 euro pour le front de prestashop donc OK.
Ensuite si le client en achète 10 alors prestashop fait 0.4675 x 10 = 4.675 qu'il arrondi a 4.68 euro alors que l'on devrait avoir comme resultat le calcul de 0.47 x 10 = 4.7 euro.

Pour info, Paypal prend bien en compte les 4.7 euros et non 4.68.
De ce fait j'ai donc des erreurs de paiement de quelque centimes sur ces commandes.

Avez vous trouvez une solution pour que prestashop prenne bien en compte dés le début du calcul le prix arrondi et non le prix avec tous les chiffres après la virgule?

Je suis preneuse de toute réflexion qui pourront solutionner ce problème de remise en %tage, sans bien sur me demander de passer par une remise en montant qui bien sur elle ne génére aucune erreur de paiement.

Bien cordialement,


Bonjour !
Non, c'est un comportement tout à fait normal.
les calculs sont effectivement réalisés sur 4 chiffres après la virgule.
Si vous souhaitez un calcul différent, c'est un développement qu'il faudra envisager.
PS : je ferme ce "vieux" post..
Fabrice
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...