Jump to content

[Solucionado] De vueltas con el IVA


Recommended Posts

Hola, no sé si ya se ha tratado el tema pero he estado buscando un buen rato y no he visto nada.

 

El caso es que alimento los precios del prestashop desde una base de datos de otra aplicación. Estos precios me vienen SIN IVA y con 2 decimales. Como es normal en la tienda muestro los precios con el 21% de IVA con los cálculos que hace el PS y con el redondeo clásico.

 

Bien, en el carro se muestran los artículos y por lo que me parece el total del pedido con IVA es la suma de los importes con el IVA ya incluido. Este caso creo que sería bueno si a la hora de realizar los cálculos usara 4 decimales en lugar de 2 porque con 2 redondea cada cálculo y después viene el error.

 

Ahora, en la plataforma origen de los precios hace los cálculos a la inversa, es decir, suma primero todos los importes SIN IVA y después calcula el importe con IVA de la suma, con lo que por el redondeo a veces tengo diferentes importes, aunque sean de 0.01.

 

Como podría solucionar esto? en PS se puede cambiar el orden a la hora de hacer los cálculos y ponerlos como la otra aplicación? sería mejor cambiar las cifras de redondeo? esto donde lo podría hacer?

 

Espero haberme explicado.

 

Muchas gracias de antemano!!

 

Edito para ponerlo [solucionado] en el título.

Edited by Germanet (see edit history)
Link to comment
Share on other sites

Hola, me autorespondo yo después de estar indagando un poco por el código he dado con la solución.

 

He visto que la mayoría (o todas) de las llamadas a al método Tools::ps_round() se hacía con el parametro de decimales a 2. En lugar de cambiar muchas llamadas de diferentes archivos he creado el método en override/classes/Tools.php y forzando los decimales a 4.

 

Con ello tenemos que los cálculos los realiza con 4 decimales, por lo que el error que se propaga es menor y al final muestra los valores por pantalla con 2 decimales.

 

Saludos,

Germán Doménech.

Link to comment
Share on other sites

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