Localización argentina - Odoo 15 - Percepciones y el módulo account_tax_python
Odoo debería darle crédito a AdHoc por el módulo account_tax_python. En Odoo 15 hay un nuevo módulo llamado account_tax_python en el cual se implementa una funcionalidad presente desde hace varios años en la localización argentina desarrollada por AdHoc. Y es de esa funcionalidad que vamos a hablar ahora.
El módulo account_tax_python permite definir por impuesto una función de Python para calcular el monto del impuesto. Y esta función tiene una forma muy sencilla:
result = price_unit * 0.20
En la cual el resultado del impuesto calculado es el 20% precio unitario de la linea de la factura. Asi de sencillo. Esta función recibe varios parámetros:
price_unit: precio unitario de la línea de la factura
base_amount: monto base del impuesto
quantity: cantidad de la linea de la factura
compañía: singleton de la empresa de la factura
partner: singleton del partner de la factura
product: singleton del producto de la línea de la factura
Que implicancias tiene esto? Bueno... permite tirar a la basura el módulo l10n_ar_sale_additional_taxes. En realidad permite reescribirlo. Mantener la funcionalidad del padrón y agregar un método llamado _get_partner_sale_tax_percentage que permita devolver el porcentaje definido en el padrón para el impuesto. Con eso bastaría. Luego habría que asegurarse que cada vez que se da de alta un producto, automaticamente se de el alta de la percepción como impuesto de venta en el mismo. Lo cual es mucho más sencillo que agregar el impuesto calculado a la factura, como veníamos haciendolo.
Bueno, esos son los pasos por seguir en el módulo de percepciones. Los mantendremos al tanto.
Acerca de:
Gustavo Orrillo
Passionate about programming, he has implemented Odoo for different types of businesses since 2010. In Moldeo Interactive he is a founding Partner and Programmer; In addition to writing on the Blog about different topics related to the developments he makes.