Conociendo el funcionamiento de la cuenta corriente de clientes y proveedores

6 de julio de 2023 por
Gustavo Orrillo
| Sin comentarios aún
 

Programar en Odoo no es dificil (el que diga lo contrario debe cambiar de sindicato me parece, porque se va a morir de hambre en esta indústria). Es más facil que aprender a desarrollar en JavaScript, C++ o frameworks como Angular o React. Incluso que Django o Flask. 

El problema aprendiendo a programar en Odoo es que uno debe tener una formación técnica y una formación de negocios. Esta formación debe enseñar como hacer las cosas en Odoo. Por ejemplo, fraccionar un cheque para que este concilie múltiples facturas. En este ejemplo, tenemos un problema de negocios. No un problema técnico. 

Por eso estamos teniendo una serie de posts que hablan sobre la lógica de como resuelve los problemas Odoo. Y vamos a empezar por la lógica contable detras de las facturas y sus pagos, ya sea de proveedores o clientes (o como le dicen en Argentina, el seguimiento de la cuenta corriente de clientes y proveedores).

Empecemos. Si una transacción en Odoo involucra un peso, un dolar o una criptomoneda (o lo que sea) es un movimiento contable. Todas las operaciones financieras en Odoo se basan en la contabilidad (aquella disciplina creada sin querer por Fray Luca Paccioli durante el Renacimiento, sino preguntenle al pobre Luca. Igual reconozcamos que en el Renacimiento la contabilidad tenía la misma tracción que estos días tiene el machine learning o la inteligencia artificial). Todo en Odoo termina en la Contabilidad. Si alguien que esta aburrido quiere discutir y decir "yo si uso el modulo de HR...", esta bien... marginalmente puede tener razón. Pero cualquier empresa que vende y cobra, utiliza el módulo contable.

Es por esto que todo programador de Odoo necesita saber las bases de la contabilidad . Que son las cuentas contables y como se comportan. Como se hacen los asientos contables. Cual es la relación de estos con los apuntes contables. Ya que en Odoo, para cualquier movimiento que involucre un peso o dolar, se hace un asiento contable (más después de la versión 13). 

Por ejemplo, veamos una factura que acabo de hacer en Odoo 14 con la factura electrónica.


y si clickeamos en apuntes contables, veremos el asiento contable que Odoo generó para la factura:


Odoo generó el clásico asiento contable de ventas. En el cual se debita la cuenta de "Deudores por Ventas" mientras se acredita Ventas e Impuestos. Cabe aclarar que si no entienden de lo que hablo, les recomiendo aprender contabilidad. Hay muchos videos que explican los fundamentos contables y si vive en Argentina le recomiendo que lea el libro de Fowler Newton). Lo mismo sucede cuando se registran los pagos, apenas se crea el pago se crea un asiento contable.

Seguimiento de deudas

Esto se aplica para compras como para ventas, solo cambian las cuentas contables. Si trabajamos con ventas la cuenta en la que se registran las deudas del cliente es Deudores por Venta (si trabajamos con compras por lo general es Proveedores). Ahora, como hacemos en Odoo para identificar las cuentas cobrables o pagables (es decir que permiten registrar deudas)? Es simple, deben tener en la configuración de la cuenta el seteo de "Permitir conciliación"


Así se le indica al sistema que la cuenta se usa para registrar deudas de proveedores o clientes (si no me creen revisen el código del archivo move.py en el módulo account y fijense la cantidad de veces que se consulta el tipo de cuenta). Con el saldo de esta cuenta contable podemos saber se debe a los proveedores, y cuanto deben los clientes. Así de simple. 

Ahora si necesitamos saber cuanto debe un cliente o proveedor de una factura en particular hay que hacer otra cosa. Para eso tenemos un campo del modelo account.move.line que se llama amount_residual (o Importe residual). En el campo amount_residual Odoo hace en forma automática el seguimiento de cuenta resta pagar para saldar la deuda de un apunte contable. Por ejemplo, de una factura de $121 apenas se valida el importe residual será $121.


Como pueden apreciar en la línea (apunte contable) de la cuenta "Deudores por Ventas" hay un importe residual igual a $121 (el cual es igual al valor del campo amount_residual de la factura, caramba que coincidencia!!! decían unos grandes cómicos argentinos). Ahora hagamos un pago de $50 y se lo imputamos (o conciliamos, es lo mismo) a la factura:


Como pueden ver el importe que se debe de la factura es de 121 pero aun no se imputó el pago del cliente. Ahora vamos a imputar el pago, y veremos como se actualiza el saldo del campo amount_residual del apunte contable relacionado con la factura.


Pueden ver que el valor del campo Importe residual es de $71 (se le restaron los $50 del pago). 

Por que es importante esto? Por la administración de la cuenta corriente. Para tener una cuenta corriente bien administrada, uno necesita varias cosas. La primera es saber cuanto te debe cada cliente o proveedor. Eso se sabe controlando el saldo de la cuenta Deudores por Venta o Proveedores. Y esto se sabe sumando los debitos y restando los créditos de dicha cuenta. Se puede hacer de muchas maneras, la más facil es en la vista de Apuntes Contables de Odoo (que lista las líneas de los asientos contables). Solo deben filtrar por la cuenta contable indicada y agrupar por partner. Y ahí saben cuanto les debe cada proveedor o cliente. Ahora, lo vamos a hacer por factura. Si a la vista de apuntes contables le agregamos el campo "Importe residual" (amount_residual) mediante el modo desarrollador. Y aplicar la misma lógica. No es muy dificil.

Ahora si les parece trabajoso, mi consejo es implementen el módulo account_debt_management que aplica estos conceptos y los simplifica. Y hace algo más (y que no es menor). Permite en Argentina y Uruguay llevar la cuenta corriente en dolares. No es poco. Es por eso que debemos agradecerle tambien a AdHoc por haber hecho este módulo que es excelente.

Gustavo Orrillo 6 de julio de 2023
Compartir
Categorías
Archivar
Identificarse dejar un comentario