According to Mexico government requirements, for Electronic Invoice CFDI 4.0, the attribute / tag Unit Price (ValorUnitario) can contain from zero to six decimal places.

It should be desirable to add a parameter to let the user specify the number of decimal places to be printed / shown in XML file. Any value from 0 to six decimal places.

So far, this attribute is printed with 6 decimal places.

See for reference the following issues:

747313 MEXICO_CFDI 40 XML is Rejected due rounding issues in field ValorUnitario

675641 MEXICO_CFDI 40 Attribute ValorUnitario should use 6 decimals




They extended it to 6 decimals in an update indicating that it was by government rule but that was incorrect since the rule does not say that, you must be able to enter from 0 to 6 decimals.

Category: Globalization - Regulatory features