Como funciona la conciliación en Odoo

Gustavo Orrillo
- 06/06/2022 - 2 min. de lectura

Como hace Odoo para crear facturas, ingresar pagos, vincular los pagos con las facturas y saber cuanto está pendiente de pagar en cada factura? Aca entra el mecanismo de conciliación del módulo contable de Odoo.

El primer paso es la creación de facturas. Al crearse una factura de clientes, se crea un asiento contable en el que se debita una cuenta cobrable (por ejemplo Deudores por Venta) y acredita las cuentas de ventas e impuestos


Lo opuesto sucede cuando se registra una factura de proveedor. Se acredita la cuenta de proveedores y se debita las cuentas de impuestos y costos.


Como verán, es contabilidad pura. Ahora veamos, registramos un pago de cliente y un pago de proveedor. Cada uno por $100


Y en el caso de registrarse un pago de proveedores, el apunte contable es de cuenta del pago a Proveedores (una cuenta pagable) 


Como ya sabemos, cada pago (al igual que cada factura) genera un asiento contable. Bien, Ahora si vemos como esta cada factura


 Vemos que el pago (en realidad el apunte contable de la cuenta cobrable del pago) esta disponible para aplicarse a la factura. Si agregamos el campo amount_residual a la vista de apuntes contables podemos ver en las cuentas pagables del pago/factura cual es el monto que queda por saldar de la misma.


Basicamente, en la factura de cliente proveedor se mostrarán tantos apuntes contables de cuentas pagables/cobrables del mismo cliente/proveedor cuyo importe residual sea diferente de cero. Ahora si aplicamos el pago, veremos como queda la factura y los apuntes contables.



Y si vemos ahora los apuntes contables


Como podemos ver, el importe residual del pago quedó en 0 (es por eso que no se muestra más para aplicar a las facturas) y el monto residual de la factura es ahora $142.

Como podemos codificar la conciliación de los pagos con sus facturas? Es simple, solo se deben agregar a un objeto del modelo account.move.line las lineas a conciliar y llamar al método reconcile.

aml_obj = self.env['account.move.line']
aml_obj += invoice_receivable_line             # línea cobrable de la factura
aml_obj += payment_receivable_line        # línea cobrable del pago
aml_obj.reconcile()                                         # reconcilia

Que es lo mismo que seleccionar los apuntes contables, y accionar el menú Reconcile.


Que como podemos imaginar es una acción de servidor con la siguiente definición;


El método reconcile se encarga de marcar un apunte contable como conciliado y actualizar el monto residual del apunte mismo. Un método muy poderoso en Odoo.

Por último, para tener en cuenta cuando se migra. Las conciliaciones se almacenan en el modelo account.partial.reconcile. Entonces, cuando llega el momento de migrar la contabilidad solo se debe migrar los apuntes contables, luego leer el modelo account.partial.reconcile y por último proceder a conciliar los apuntes contables migrados.

Acerca de:

Gustavo Orrillo

Apasionado de la programación, implementa Odoo para distintos tipos de negocios desde el año 2010. En Moldeo Interactive es Socio fundador y Programador; además de escribir en el Blog sobre distintos temas relacionados a los desarrollos que realiza.