fix(account.invoice.line): altera el precio únicamente en caso de que el producto lleve IEPS
¿Qué hace este MR?
Cuando el producto no lleva IEPS y el cliente tampoco era sujeto de IEPS se estaba alterando el precio unitario porque al pasar por la función que calcula el total de impuestos redondeaba la base. Dado que en dicha función se está redondeando la base de impuestos para que coincida con el número de decimales que maneja la moneda, en caso de enviar un producto con una unidad y un precio por unicad con una precisión mayor a la precisión de la moneda, inmediatamente se altera el precio por unidad enviado al SAT en el XML.
Ejemplos:
Cantidad | Precio Unitario | Importe | IVA | Total 393 | 3.7183 | 1461.29 | 233.81 | 1695.10 1000 | 1.2922 | 1292.20 | 206.75 | 1498.95
¿Cumple los criterios de aceptación?
- Agrega pruebas unitarias y/o escenarios de negocio
- Documentación creada/actualizada
- Sigue las guías de evolución del C4
- Sigue las guías de estilo de código
Checklist de revisión
- Your team's review (required)
- PM's review (recommended, but not a blocker)
- Technical writer's review (required)
cc @OpenPymeMx