Odoo 19 · AS Aluminio · Cuentas analíticas e Informes contables

Cierre de ejercicio y bloqueos

Todo lo que pasa al final de un período o de un año: cuándo termina el ejercicio, cómo entran los saldos iniciales, y los cinco candados que protegen lo ya cerrado. Para quien administra la contabilidad y decide qué se puede seguir tocando y qué no.

1

Cuándo termina el ejercicio

Una sola fecha define el corte anual de toda la contabilidad, y se carga una vez.

Cerrar un ejercicio en Odoo no es apretar un botón. Es un conjunto de fechas y de candados que se aplican sobre los asientos ya cargados. Lo primero, entonces, es decirle al sistema cuándo termina el año.

Se configura en Contabilidad > Configuración > Ajustes, bloque Periodos fiscales, recuadro Año fiscal. Ahí se carga el Último día: primero el mes, después el día. De fábrica viene 31 de diciembre, que es lo habitual, pero muchas empresas argentinas cierran en otro mes.

Ese dato no crea períodos ni genera asientos. Hace dos cosas: define el corte que usan los reportes cuando se les pide un ejercicio, y le da a Odoo el marco para agrupar y numerar los asientos por año. Si el ejercicio de AS Aluminio no cierra en diciembre, corregirlo antes de cargar el primer comprobante evita rehacer reportes más adelante.

En el mismo recuadro hay una casilla Definir años fiscales de menos o más de 1 año. Al tildarla aparece un botón Años fiscales, donde se carga cada ejercicio con su nombre, su fecha de inicio y su fecha final. Es lo que se usa para el primer ejercicio de una empresa nueva, o para el ejercicio que se acorta o se alarga porque cambió la fecha de cierre. Odoo no deja que dos ejercicios se superpongan.

🖼️
Captura pendiente
El bloque Periodos fiscales de Contabilidad > Configuración > Ajustes, con el recuadro Año fiscal a la vista. Tienen que leerse el campo Último día con el mes y el día ya cargados, y debajo la casilla Definir años fiscales de menos o más de 1 año sin tildar.
Si el bloque no aparece, es permisoEl bloque Periodos fiscales de los Ajustes solo lo ve quien tenga el perfil de contabilidad completo. No está oculto ni falta un módulo: es el permiso del usuario.
2

El asiento de apertura y los saldos iniciales

Cómo entran a Odoo los saldos que traía el sistema anterior.

Cuando una empresa arranca en Odoo a mitad de camino, hay que meter los saldos con los que viene. Eso se hace con un único asiento —el asiento de apertura— y se carga desde el panel de puesta en marcha que aparece en el Tablero de Contabilidad.

El paso Configurar periodos abre una ventana titulada Periodos contables con dos datos: la Fecha de apertura y el Fin del ejercicio fiscal. La fecha de apertura es el día a partir del cual la contabilidad se lleva en Odoo. Acá hay un detalle que confunde a todo el mundo: el asiento de apertura no lleva esa fecha, lleva la del día anterior. Si la empresa arranca el 1 de enero, el asiento queda fechado el 31 de diciembre.

El paso Revisar plan de cuentas abre el plan de cuentas en modo edición, con dos columnas que no están en el listado normal: Débito de apertura y Crédito de apertura. Se completa cuenta por cuenta. Hay una tercera columna, Balance de apertura, que viene oculta y se agrega desde el selector de columnas.

Odoo arma el asiento solo: lo llama Asiento contable de apertura, lo registra en el primer diario de tipo misceláneo, y manda la diferencia que falte para cuadrar a la cuenta de tipo Ganancias del año en curso. Mientras el asiento esté en borrador se puede seguir editando. Una vez registrado, el paso deja de abrir la lista editable y abre el plan de cuentas común: para corregir un saldo inicial hay que volver el asiento a borrador.

🖼️
Captura pendiente
El paso Revisar plan de cuentas, abierto desde el panel de puesta en marcha que aparece en Contabilidad > Tablero: el plan de cuentas en modo edición, con varias cuentas ya completadas. Tienen que verse las columnas Débito de apertura y Crédito de apertura con importes cargados en varias filas.
🖼️
Captura pendiente
La ficha del Asiento contable de apertura —el que arma Odoo solo en el primer diario de tipo misceláneo— todavía en estado Borrador y con la lista de apuntes desplegada. Lo que no puede faltar es la línea que Odoo agrega por su cuenta contra la cuenta de tipo Ganancias del año en curso: es la que tapa el desbalance y de la que habla el aviso de abajo.
El asiento de apertura siempre cuadra, aunque esté malOdoo agrega por su cuenta la línea de diferencia contra Ganancias del año en curso. Que el asiento cierre no significa que los saldos estén bien cargados: significa que Odoo tapó el desbalance. Antes de registrarlo hay que comparar cuenta por cuenta contra el balance de cierre del sistema anterior.
3

Las cinco fechas de bloqueo

Un candado por tipo de operación, más uno que no se puede volver a abrir nunca.

Todas se cargan en una sola pantalla: Contabilidad > Bloqueando > Fechas de bloqueo…. Sí, el grupo de menú se llama Bloqueando —o Cerrando, según la variante de español instalada—. Es la traducción literal de Closing y no ayuda: quien busque «Cierre» en el menú de Contabilidad no lo va a encontrar. La pantalla la abre solo el administrador de contabilidad.

Son cinco campos de fecha, y todos bloquean hasta esa fecha inclusive:

FechaQué bloquea
Fecha de bloqueo de las ventasLos asientos de los diarios de venta.
Fecha de bloqueo de comprasLos asientos de los diarios de compra.
Fecha de bloqueo de la declaración de impuestosCualquier asiento que tenga impuestos, sea del diario que sea.
Fecha de bloqueo globalTodos los asientos, de todos los diarios. Admite excepciones.
Fecha de bloqueo permanenteTodos los asientos, para todos los usuarios, sin excepciones y sin vuelta atrás.

Conviene entender qué hace realmente el bloqueo, porque no es lo que la mayoría espera. Si se registra un comprobante nuevo con fecha dentro del período bloqueado, Odoo no lo rechaza: le corre la fecha contable al primer día abierto y lo avisa en la ficha antes de registrar. Lo que sí rechaza es tocar un asiento que ya está registrado dentro del período cerrado: ahí corta con «No puede agregar/modificar asientos anteriores a y que incluyan…» y no hay forma de guardar.

La fecha de impuestos se mueve sola. Cuando se registra el asiento de cierre de la declaración de impuestos, Odoo la adelanta automáticamente al final del período declarado. Ese circuito se explica en el Manual «Impuestos».

🖼️
Captura pendiente
La pantalla que abre Contabilidad > Bloqueando > Fechas de bloqueo…, con el camino del menú desplegado si entra en la toma. Como es una pantalla completa, cuidá que en la barra superior no se lean el nombre de la base de datos ni la dirección del servidor. Tienen que leerse los cinco campos completos: Fecha de bloqueo de las ventas, Fecha de bloqueo de compras, Fecha de bloqueo de la declaración de impuestos, Fecha de bloqueo global y Fecha de bloqueo permanente.
🖼️
Captura pendiente
El cartel de error que corta el guardado. Para provocarlo: abrí un asiento ya registrado con fecha anterior a la fecha de bloqueo global, cambiá cualquier dato e intentá guardar. Se tiene que leer completo el texto «No puede agregar/modificar asientos anteriores a y que incluyan…», con la ficha del asiento detrás; para la prueba elegí un asiento de un diario de misceláneos, así no queda a la vista el nombre de un cliente en el campo Empresa.
La fecha de bloqueo permanente no se deshaceNo se puede borrar —Odoo contesta «No puede quitar la fecha de bloqueo permanente»— ni retroceder a una fecha anterior, ni destrabar con una excepción. Además exige que no queden asientos en borrador con fecha anterior: si los hay, corta y ofrece un botón para revisarlos. Ponerla es una decisión de una sola vez; conviene reservarla para ejercicios ya presentados y firmados.
Antes de bloquear, conciliarPara poner la fecha de bloqueo global o la permanente, Odoo exige que no queden líneas de extracto bancario sin conciliar en el período. Si las hay, no guarda: avisa y ofrece un botón para verlas. Se explica en el Manual «Conciliación bancaria».
4

Las excepciones temporales

Destrabar un ajuste puntual sin abrir el período entero.

Pasa siempre: el período está cerrado y aparece un ajuste que hay que hacer sí o sí. La reacción intuitiva —correr la fecha de bloqueo, hacer el ajuste, volver a ponerla— es la peor de todas, porque durante ese rato el período queda abierto para cualquiera.

Para eso está la excepción. En la misma pantalla de fechas de bloqueo, al escribir una fecha anterior a la que ya estaba, aparece un recuadro Excepción con tres datos: a quién aplica (para mí o para todos), cuánto dura (por 5 minutos, por 15 minutos, por 1 hora, por 24 horas o para siempre) y el Motivo de la excepción.

Mientras la excepción está viva, esa persona puede cargar en el período; para el resto sigue cerrado. Vencido el plazo se apaga sola, sin que nadie tenga que acordarse. También se puede cortar antes: la propia pantalla muestra Para mí: o Para todos: con la fecha destrabada y un Revocar al lado.

Dos cosas para tener claras. Elegir «para todos» y «para siempre» a la vez no crea ninguna excepción: eso es, lisa y llanamente, cambiar la fecha de bloqueo. Y la fecha de bloqueo permanente no acepta excepciones de ningún tipo, ni siquiera para el administrador.

🖼️
Captura pendiente
La misma pantalla de fechas de bloqueo justo después de escribir una fecha anterior a la que ya estaba, sin guardar todavía: el recuadro Excepción desplegado, con la opción para mí / para todos, la duración elegida (por ejemplo por 1 hora) y el Motivo de la excepción escrito.
5

El registro de auditoría

Con la opción activa, ningún cambio sobre un asiento registrado se pierde.

Odoo guarda el historial de cambios de cada asiento en su propio hilo de mensajes. Por defecto, ese historial se puede borrar. La opción Pista de auditoría restrictiva lo vuelve inmutable.

Se enciende en Contabilidad > Configuración > Ajustes, bloque Reportes. Con la opción activa cambian dos cosas concretas: un asiento que alguna vez estuvo registrado ya no se puede eliminar —hay que cancelarlo, que deja rastro—, y tampoco se pueden borrar los mensajes ni los adjuntos de su historial.

El reporte está en Contabilidad > Revisión > Registros > Pista de auditoría. No lista solamente asientos: junta los cambios sobre asientos, cuentas, impuestos, contactos y la propia compañía. Ahí quedan registradas también las modificaciones de las fechas de bloqueo, con fecha, usuario y valor anterior.

En Argentina la localización no fuerza esta opción —en otros países sí—, así que es una decisión de la empresa. Conviene encenderla el primer día, porque no reconstruye nada de lo que se borró antes.

🖼️
Captura pendiente
El reporte Contabilidad > Revisión > Registros > Pista de auditoría con varias filas ya cargadas, donde se vean la fecha, el usuario y el valor anterior de cada cambio. Conviene mostrar filas de cambios sobre cuentas o sobre las fechas de bloqueo, no sobre contactos, así no aparecen nombres de personas reales.
6

Asegurar los asientos con hash

El encadenamiento que hace evidente cualquier alteración hacia atrás.

Proteger un asiento con hash es calcularle una huella a partir de su contenido y de la huella del asiento anterior de la misma secuencia. Los asientos quedan encadenados: si alguien modifica uno viejo por fuera de la aplicación, la huella deja de coincidir y la cadena queda rota a la vista de cualquiera que la revise.

Hay dos maneras de hacerlo. Por diario: en la ficha del diario, pestaña Ajustes avanzados, grupo Automatización, la casilla Proteger asientos registrados con hash. Con eso, cada asiento se protege en el momento de registrarse. La casilla existe en los diarios de venta, de compra y de misceláneos, y una vez que el diario tiene asientos protegidos ya no se puede destildar.

Y a demanda: el asistente Proteger asientos, en el mismo grupo de menú que las fechas de bloqueo. Pide una fecha y protege todo hasta ahí inclusive. Antes de ejecutar avisa lo que encuentra: asientos en borrador anteriores a esa fecha, líneas de extracto sin conciliar, huecos en la numeración que van a quedar sellados, y asientos que directamente no se pueden proteger.

Un detalle que desconcierta: el menú Proteger asientos no aparece de entrada. Hasta que se protege el primer asiento solo se ve con el modo desarrollador activado; después queda visible para todos los usuarios de contabilidad.

🖼️
Captura pendiente
La ficha de un diario de venta abierta desde Contabilidad > Configuración > Diarios, con la pestaña Ajustes avanzados seleccionada y el grupo Automatización a la vista. Tiene que leerse la casilla Proteger asientos registrados con hash, tildada.
🖼️
Captura pendiente
El asistente Proteger asientos, que está en el mismo grupo de menú que las fechas de bloqueo (Contabilidad > Bloqueando) y que hasta el primer asiento protegido solo se ve con el modo desarrollador activado. Sacalo abierto y todavía sin ejecutar, con la fecha ya cargada. Lo importante es que se vean los avisos que muestra antes de confirmar: los asientos en borrador anteriores a esa fecha, las líneas de extracto sin conciliar y los huecos de numeración que van a quedar sellados.
Proteger no es lo mismo que bloquearLa fecha de bloqueo impide cargar y modificar. El hash no impide nada: deja evidencia de que algo se modificó. Son mecanismos complementarios, no alternativos, y ninguno reemplaza al otro.
7

Herramientas de corrección antes de cerrar

Dos asistentes para arreglar numeraciones e imputaciones antes de tirar el candado.

Renumerar. Si quedaron saltos en la numeración de un diario —por asientos borrados o por cargas fuera de orden— hay que corregirlos antes de bloquear. Se seleccionan los asientos en el listado, todos del mismo diario, y en el menú de acciones aparece Resecuenciar.

El asistente pide la Primera secuencia nueva y ofrece dos criterios, Mantener el orden actual o Reordenar por fecha contable, con una vista previa de cómo queda cada asiento antes de confirmar. Dos advertencias: la opción solo se ve con el modo desarrollador activado, y si el diario ya tiene los asientos protegidos con hash, «Reordenar por fecha contable» está prohibido y Odoo lo rechaza.

Asientos automáticos. Para cambiar la cuenta de varios apuntes de una vez, o para diferir un importe a otro período, se seleccionan los apuntes en Contabilidad > Revisión > Control > Apuntes contables y se usa el menú de acciones:

  • Mover a la cuenta: pide una cuenta destino y genera un asiento de transferencia que saca el saldo de las cuentas originales y lo lleva a la nueva. Es la reimputación en masa.
  • Cambiar periodo: pide una fecha y un porcentaje o un importe, y genera dos asientos que sacan esa parte del período original y la reconocen en el nuevo, apoyándose en las cuentas de devengo de ingresos y de gastos.

Los dos tienen las mismas dos limitaciones, y conviene saberlas de antemano: trabajan solamente sobre asientos ya registrados y solamente sobre apuntes que no estén conciliados. Si el apunte ya se cruzó con un pago, hay que desconciliarlo primero.

🖼️
Captura pendiente
El asistente Resecuenciar, al que se llega tildando varios asientos del mismo diario en el listado y eligiéndolo en el menú de acciones (la opción solo aparece con el modo desarrollador activado). Sacalo abierto, antes de confirmar. Tienen que verse la Primera secuencia nueva cargada, las dos opciones Mantener el orden actual y Reordenar por fecha contable, y la vista previa con el número que le va a quedar a cada asiento.
🖼️
Captura pendiente
El listado de Contabilidad > Revisión > Control > Apuntes contables con varios apuntes tildados y el menú de acciones desplegado, donde se lean Mover a la cuenta y Cambiar periodo. Cuidando que la columna «Empresa» del listado no muestre nombres de clientes reales.
El orden de las cosasCerrar bien un período tiene una secuencia: primero conciliar los bancos, después corregir imputaciones y numeraciones, después registrar la declaración de impuestos, y recién ahí poner las fechas de bloqueo. Al revés no funciona: cada corrección que aparezca después va a necesitar una excepción.