Ir al contenido

Configuracion contable

La vista de Configuración contable (ruta /accounting/configuracion) es donde das de alta las cuentas contables (caja, banco, tarjeta, digital, otro) y las categorías con las que clasificas tus movimientos. Es la primera pantalla que debes visitar al activar Contabilidad para tu negocio, porque Ingresos, Egresos y Reportes dependen de esta configuración.

La vista tiene un toggle de dos pestañas en la parte superior: Cuentas (gestión de cuentas contables) | Categorías (gestión de categorías de clasificación).

Si creas categorías y cuentas antes de registrar tu primer egreso, ahorras trabajo. Recomendado: configurar antes de operar.


  1. Permisos de administrador. Solo el dueño o un administrador puede crear cuentas y categorías. Si tu rol no tiene permiso, verás las cuentas/categorías pero no los botones de alta ni los toggles de activar/desactivar.
  2. Sucursales activas. La sección de cuentas filtra por sucursal del header; revisa primero que tus sucursales estén dadas de alta en Sucursales > Gestión de Sucursales.
  3. Plan de cuentas básico. Antes de crear, ten un plan mental: ¿qué cuentas va a usar cada sucursal? Mínimo: una caja por sucursal y 1–2 cuentas de banco o tarjeta compartidas.
  4. Plan de categorías. Lista los tipos de egresos que tendrás (renta, sueldos, insumos, servicios, marketing) y los de ingresos (ventas POS, ventas online, consumos) — las categorías y/o “ambos” te permiten usar la misma en ambos lados.
  5. Conceptos previos útiles:
    • Cuenta: contenedor donde se acumula el balance de dinero. Tipos: cash, bank, card, digital, other.
    • Categoría: etiqueta que clasifica cada movimiento. Tipos: ingreso, egreso, ambos.
    • Cuenta global: una cuenta cuya sucursal es null; aplica a todo el negocio. Solo permitida para bank, card, digital, other (NO cash).
    • Cuenta por sucursal: una cuenta cuya sucursal es una específica. Las cajas SIEMPRE son por sucursal.
  6. Tiempo de lectura: 6 minutos. Configuración inicial: 10 minutos.

ZonaContenido
Header del tabBotón “Nueva cuenta” para abrir formulario lateral / modal de alta.
Grid de cuentasLista de cuentas activas e inactivas. Columnas: nombre, sucursal/tipo, balance, botón “Activar” / “Desactivar”.
Formulario alta (al dar clic en “Nueva cuenta”)Campos: nombre, tipo, sucursal, saldo inicial.
ZonaContenido
Header del tabBotón “Nueva categoría”.
Lista de categoríasCada fila: nombre, tipo, etiqueta “Predeterminada” si la categoría es del sistema (is_system).
Formulario altaCampos: nombre, tipo.
Acción por filaToggle Activar/Desactivar. NO existe “Eliminar” (porque preservamos histórico).

Emelit Express define 5 tipos de cuenta. La diferencia principal está en cómo se trata cada una:

TipoNombre comúnSucursalCuándo usarEjemplo
cashCajaOBLIGATORIA por sucursalEfectivo físico en la sucursal. NO existen cajas globales.”Caja Insurgentes”, “Caja Vallejo”.
bankBancoOpcional (global o por sucursal)Cuenta bancaria con saldo operativo.”Banco Azteca 0492”, “Banorte 8821”.
cardTarjetaOpcionalTarjeta de crédito o débito con líneas de pago.”Tarjeta BBVA 1188”.
digitalDigitalOpcionalCartera digital (Mercado Pago, Bizum, Clip).”Mercado Pago”, “Clip Insurgentes”.
otherOtroOpcionalCualquier otra (vale, crédito interno, etc.).”Vales de despensa”.

Regla clave: las cajas (cash) siempre tienen sucursal asignada. El backend valida con validateAccount y rechaza cualquier intento de crear cuenta cash con sucursal null. Esto se debe a que cada sucursal debe poder arquear su propia caja. Las cuentas bank, card, digital y other pueden ser globales o por sucursal según tu operación.

  1. Entra a Contabilidad > Configuración. Asegúrate de estar en el tab Cuentas.
  2. (Opcional) Define en el header si vas a crear una cuenta para una sucursal específica o si será global. Si la cuenta es por sucursal, selecciona la sucursal en el header antes de crear.
  3. Clic en Nueva cuenta.
  4. Completa el formulario:
CampoTipoObligatorioNotas
NombreTexto libreSé explícito: “Caja Insurgentes” en lugar de “Efectivo”.
TipoSelect (cash, bank, card, digital, other)Determina comportamiento y reglas.
SucursalSelect (o “Global”)Sí si tipo cash; Opcional si otro tipoPara cash DEBE ser una sucursal específica.
Saldo inicialNúmero decimalNo (default 0)Cantidad en MXN con que arranca la cuenta.
  1. Clic en Guardar. La cuenta aparece en el grid.
  2. La cuenta nueva está activa por default; puedes desactivarla si la dejaste de usar (no se elimina por integridad de movimientos históricos).

El balance visible en el grid se calcula:

balance = opening_balance + Σ(movimientos posted)

Donde:

  • opening_balance es el saldo inicial que capturaste al crear.
  • movimientos posted del rango disponible: ingresos suman, egresos restan.
  • Movimientos voided, draft, pending y to_pay NO se consideran.

Ejemplo:

  • Cuenta “Banco Azteca 0492”, saldo inicial $80,000.
  • 1 de junio: entra $15,000 (ingreso), sale $15,000 (renta).
  • Balance mostrado: $80,000 + 15,000 − 15,000 = $80,000.

Si una cuenta queda en desuso (ej. cambiaste de proveedor de tarjetas), no la elimines porque sus movimientos históricos siguen existiendo. Desactívala:

  1. En el grid de cuentas busca la cuenta.
  2. Clic en el botón Desactivar (toggle o interruptor).
  3. La cuenta sigue visible en Configuración pero no aparecerá en los selects de Egresos ni al registrar movimientos manuales.

Para reactivar:

  1. Clic en Activar en la misma fila.
  2. La cuenta se hace disponible nuevamente.
  1. Entra a Contabilidad > Configuración > tab Categorías.
  2. Clic en Nueva categoría.
  3. Completa el formulario:
CampoTipoObligatorioNotas
NombreTexto libre”Renta y servicios”, “Sueldos y salarios”, “Insumos”, “Marketing”, “Impuestos”, “Otros”.
TipoSelect (egreso, ingreso, ambos)egreso: solo para salidas. ingreso: solo para entradas. ambos: puedes usarla en ambos flujos.
  1. Clic en Guardar. La categoría aparece en la lista.

Algunas categorías vienen precargadas por Emelit Express y se etiquetan como “Predeterminada” (is_system = true). Tienen reglas especiales:

  • No se pueden eliminar (solo activar/desactivar).
  • Tienen nombres estándar que el backend usa como fallback en algunos procesos automáticos (ej. categorizar una compra de inventario en “Insumos”).
  • Se identifican por la etiqueta visual “Predeterminada” en la lista.

Las categorías que tú creas a mano NO tienen esa etiqueta y se comportan igual, salvo que no son referenciadas por procesos automáticos.

Como con las cuentas, las categorías no se eliminan para preservar la integridad histórica de los movimientos que las referencian.

  1. En la lista de categorías busca la categoría.
  2. Clic en el toggle Activar/Desactivar.
  3. Las categorías inactivas no aparecen en los selects de Egresos ni en cualquier parte donde se elija categoría.

Si una categoría quedó mal escrita o mal tipada, désactíala y crea una nueva. Los movimientos históricos siguen referenciando la categoría original, sin ruptura de trazabilidad.

Parte 7: Diferencia entre cuentas globales y por sucursal

Sección titulada «Parte 7: Diferencia entre cuentas globales y por sucursal»
CaracterísticaCuenta global (sucursal null)Cuenta por sucursal
Tipos permitidosbank, card, digital, otherTodos los tipos
** visible en selects de Egresos**Sí, en cualquier sucursal del headerSolo si el header coincide con la sucursal de la cuenta
Aparece en Reportes > SaldosSí (con columna Sucursal en blanco)Sí, con la sucursal asignada
Aparece en Reportes > Resultado por sucursalComo saldo global (no se desglosa por sucursal)En su sucursal específica
Ejemplo de uso”Banorte 8821” — única cuenta bancaria compartida por todas las sucursales”Caja Vallejo” — solo para Vallejo
  • Usa cuentas globales para:
    • Una cuenta bancaria central que recibe los ingresos de todas las sucursales (conciliación una sola vez al mes).
    • Tarjetas de crédito corporativas.
    • Carteras digitales compartidas (Mercado Pago negocio).
  • Usa cuentas por sucursal para:
    • Cajas (cash): obligatorio, no hay opción.
    • Cuentas bancarias donde la responsabilidad operativa es de la sucursal (el gerente arquea cada noche).
    • Tarjetas de crédito asignadas al gerente de cada sucursal.
    • Carteras digitales de cobro exclusivas del local (ej. código QR de Mercado Pago que solo se usa en Vallejo).

En el tab “Saldos” verás todas las cuentas (globales y por sucursal). En “Resultado por sucursal” del Estado de resultados, las cuentas globales no se desglosan por sucursal porque no pueden atribuirse a una. Atribuye los movimientos a través del sucursal_id del movimiento, no de la cuenta.

  • listCategories — lista todas las categorías (activas e inactivas).
  • createCategory — alta de categoría: { name, type }.
  • updateCategory — actualización: activar/desactivar.
  • listAccounts — lista de cuentas (puede traer todas o filtrar por sucursal del header).
  • createAccount — alta de cuenta: { name, type, sucursal_id, opening_balance }.
  • updateAccount — actualización: activar/desactivar / ajustar saldo inicial.

Eres dueño del Restaurante El Buen Sazón (3 sucursales). Es julio 2026 y estás activando Contabilidad por primera vez. Tienes:

  • Insurgentes (CDMX matriz): 1 caja, 1 cuenta Banorte.
  • Vallejo (CDMX): 1 caja, 1 cuenta Banco Azteca.
  • Guadalajara: 1 caja, comparte la cuenta Banorte matriz.
  • Para digital: Mercado Pago negocio (compartido) + Clip en cada sucursal.

Configurar todas las cuentas y categorías antes del 1 de agosto para que el cierre mensual arranque limpio.

Lunes 14 julio, 10 AM — Crear cuentas de caja

  1. Header en Insurgentes. Tab Cuentas. Clic Nueva cuenta.
  2. Nombre: “Caja Insurgentes”, Tipo: cash, Sucursal: Insurgentes (auto del header), Saldo inicial: 12000.00. Guardar.
  3. Header en Vallejo. Nueva cuenta: Nombre “Caja Vallejo”, Tipo cash, Saldo inicial 8500.00. Guardar.
  4. Header en Guadalajara. Nueva cuenta: Nombre “Caja Guadalajara”, Tipo cash, Saldo inicial 15000.00. Guardar.

Lunes 10:15 AM — Crear cuentas bancarias

  1. Header en “Todas”. Nueva cuenta: Nombre “Banorte 8821”, Tipo bank, Sucursal: Global (null), Saldo inicial 200000.00. Guardar (cuenta global).
  2. Nueva cuenta: “Banco Azteca 0492”, Tipo bank, Sucursal: Vallejo (selector pones Vallejo), Saldo inicial 80000.00. Guardar.

Lunes 10:25 AM — Crear cuentas digitales

  1. Header en “Todas”. Nueva cuenta: “Mercado Pago negocio”, Tipo digital, Sucursal: Global, Saldo inicial 20000.00. Guardar.
  2. Header en Insurgentes. Nueva cuenta: “Clip Insurgentes”, Tipo digital, Sucursal: Insurgentes, Saldo inicial 5000.00. Guardar.
  3. Repites para Vallejo (“Clip Vallejo”, saldo 5000) y Guadalajara (“Clip Guadalajara”, saldo 8000).

Lunes 10:40 AM — Crear cuentas de tarjeta

  1. Header “Todas”. Nueva cuenta: “Tarjeta BBVA 1188”, Tipo card, Sucursal Global, Saldo inicial 0 (línea de crédito). Guardar.

Lunes 10:50 AM — Crear categorías

  1. Tab Categorías. Clic Nueva categoría.
  2. Crea:
    • “Renta y servicios” (egreso)
    • “Sueldos y salarios” (egreso)
    • “Insumos” (egreso)
    • “Marketing” (egreso)
    • “Mantenimiento equipo” (egreso)
    • “Impuestos” (egreso)
    • “Otros” (ambos)
  3. Verificas que las categorías Predeterminadas del sistema (“Insumos Predeterminada”, “Venta Predeterminada”) ya están activas y las dejas activas para que las uses también.

Lunes 11:00 AM — Validación

  1. Entras a Contabilidad > Egresos con header en Vallejo. Clic Registrar egreso. En el select Cuenta aparecen: “Caja Vallejo”, “Banco Azteca 0492”, “Banorte 8821” (global), “Mercado Pago negocio” (global), “Clip Vallejo”, “Tarjeta BBVA 1188” (global).
  2. En el select Categoría aparecen: “Renta y servicios”, “Sueldos y salarios”, “Insumos”, “Marketing”, “Mantenimiento equipo”, “Impuestos”, “Otros”, y las predeterminadas activas.
  3. Todo listo para registrar egresos sin fricción.
  • Cierre mensual limpio en agosto: con todas las categorías y cuentas activas, tu contador no te pidió reabrir ergistros.
  • Mezcla de canales visible: Mercado Pago global muestra todos los ingresos digitales consolidados en un solo balance.
  • Cajas separadas por sucursal: cada gerente arquea su caja sin confusiones de mesadas de otra sucursal.
  • Cuenta de tarjeta global: el saldo card puede operar en negativo (línea de crédito) sin causar alertas falsas en Reportes.

  1. Cajas: una por sucursal (obligatorio).
  2. Cuentas bancarias: una global si compartes, o por sucursal si cada una opera su propia cuenta.
  3. Carteras digitales: global si el dinero se consolida en la cuenta del negocio; por sucursal si cada local opera su propio cobro digital.
  4. Categorías de egreso: las mínimas para tu giro. Para restaurante: Renta y servicios, Sueldos y salarios, Insumos, Marketing, Mantenimiento, Impuestos, Otros.
  5. Categorías de ingreso: suele usarse Predeterminada de “Venta” la que ya viene activa del sistema; crea extras si separas canal (ej. “Catering eventos”).
  1. Día 1 del mes: entra a Configuración > Cuentas y revisa que los balances cuadren con Reportes > Saldos.
  2. Si una cuenta quedó en negativo injustificado, ajusta el saldo inicial.
  3. Revisa en Categorías que no haya ninguna categoría relevante desactivada por error.
  1. Limpia cuentas que ya no usas (desactívalas, no las elimines).
  2. Si una categoría dejó de ser útil, desactívala.
  3. Si abres nueva sucursal, crea su caja inmediatamente para que pueda operar el primer día.

Antes de crear cualquier cuenta o categoría

Sección titulada «Antes de crear cualquier cuenta o categoría»
  • Confirma el tipo correcto (cash no admite global).
  • Elige nombre descriptivo (incluye sucursal en el nombre si es por sucursal; “Caja Insurgentes” en lugar de solo “Caja”).
  • Define el saldo inicial con cuidado: si pones un dato mal, afecta todos los reportes posteriores y la única forma de corregir es editar el saldo inicial (no se permite editar movimientos históricos).

ErrorCausa probableSolución paso a paso
”No puedo crear cuenta cash sin sucursal”Validación backend validateAccount: las cajas siempre llevan sucursal.1. Selecciona una sucursal en el header antes de crear. 2. Crea la cuenta con tipo cash y la sucursal seleccionada.
”La cuenta no aparece en el select de Egresos”Está inactiva, o el header está en otra sucursal.1. Verifica estado de la cuenta en Configuración > Cuentas. 2. Si está inactiva, activa. 3. Si es por sucursal, cambia el header a esa sucursal.
”El balance mostrado no coincide con la suma de movimientos”Consideras movimientos voided/draft que el sistema excluye.Recuerda: balance = opening_balance + Σ(posted). No incluye voided/draft/pending/to_pay.
”Creé una cuenta con saldo inicial mal”Error de captura.Edita la cuenta y corrige el saldo inicial; el balance se recalcula. Los movimientos ya registrados siguen sumando igual.
”Quise eliminar una categoría y no aparece el botón”Por diseño: las categorías y cuentas no se eliminan, solo se desactivan.Desactiva la categoría/cuenta. Los movimientos históricos siguen referenciándola correctamente.
”Categoría Predeterminada en estado desactivado”Alguien la desactivó sin querer.Reactívala: las categorías del sistema (is_system) son referenciadas por procesos automáticos.
”Cuenta global aparece también en filtros de sucursal”Comportamiento esperado: las cuentas globales aparecen en cualquier selector de sucursal.No es error: las globales son accesibles desde cualquier sucursal.
”Mercado Pago sale con saldo negativo”Es deuda acumulada (deudas de la cartera) — válido en cuentas digital y card.Si no es esperado, valida la configuración de la cuenta y los egresos registrados. Si es deuda real, está bien en negativo.
”La sucursal no aparece en el select al crear cuenta cash”La sucursal no está dada de alta o está inactiva.1. Ve a Sucursales > Gestión de Sucursales. 2. Crea o reactiva la sucursal. 3. Vuelve a Configuración.
”Quiero que una categoría sea ‘ambos’ pero la creé como egreso”No se puede editar el tipo de categoría (afecta histórico).1. Desactiva la categoría original. 2. Crea una nueva con tipo “ambos”. 3. Usa la nueva en nuevos egresos/ingresos. Los históricos siguen usando la original.

P: ¿Puedo tener una caja global para todo el negocio? R: No. Las cuentas cash siempre requieren sucursal porque cada sucursal arquea su propia caja. Si necesitas ver el efectivo total consolidado, ve a Reportes > Saldos en modo “Todas” y verás la suma de todas las cajas.

P: ¿Cómo cambio el saldo inicial de una cuenta a mitad del mes? R: Edita la cuenta desde Configuración > Cuentas. El backend recalcula el balance a partir del nuevo saldo inicial. Si ya tienes movimientos posted anteriores, el ajuste se reflejará en Reportes > Saldos a partir de ese momento.

P: ¿Por qué no puedo eliminar una categoría o cuenta? R: Por integridad histórica: los movimientos pasados quedan vinculados a la categoría/cuenta original. Si las eliminas, esos movimientos quedarían sin referencia y romperías la trazabilidad fiscal. En su lugar, desactívalas: dejan de aparecer en nuevos registros pero conservan el histórico.

P: ¿Cómo se calcula el balance que muestra el grid? R: opening_balance + Σ(movimientos posted), donde ingresos suman y egresos restan. Los movimientos voided, draft, pending y to_pay no se consideran.

P: ¿Las cuentas bancarias globales se relacionan con cuentas bancarias (próximamente)? R: Sí. La vista “Cuentas bancarias” (Pronto) permitirá subir estados de cuenta bancarios para conciliar contra los movimientos de las cuentas bank globales o por sucursal que ya hayas creado aquí.

P: ¿Las categorías “ambos” son recomendables? R: Solo si realmente usas la misma categoría para ambos lados (ej. “Otros” que capturas como ingreso por devolución o como egreso por misceláneo). Si la categoría tiene sentido solo en un sentido (Renta es solo egreso), creala con tipo egreso para que aparezca solo donde aplica.

P: ¿Una cuenta global puede convertirse en por sucursal después? R: No directamente. Crea la nueva cuenta con sucursal, transfiere los movimientos futuros a esa nueva, y desactiva la global. Los movimientos históricos siguen en la global.

P: ¿Qué saldo inicial pongo para una tarjeta de crédito? R: Si la tarjeta es de crédito y arrastra deuda, saldo inicial 0 (o el saldo deudor actual). Las cuentas card pueden operar en negativo (las débito tendrás que recargar el saldo con un ingreso al principio). El comportamiento es esperado.

P: ¿Cómo doy de baja una cuenta con saldo pero que ya no uso? R: No puedes “borrarla”. Transfiere el saldo restante con un ingreso o egreso hacia la cuenta correcta y luego desactiva la cuenta. El histórico se conserva.

P: ¿Puedo crear más de una caja por sucursal? R: Sí. Por ejemplo, si en Insurgentes manejas una “Caja Insurgentes - Mostrador” y otra “Caja Insurgentes - Mesas”, crea las dos cuentas cash con sucursal Insurgentes y nombres distintos. Ambas aparecerán en los selects.

P: ¿Las categorías Predeterminadas del sistema las puedo renombrar? R: No, son fijas: vienen con is_system = true y nombre bloqueado. Si necesitas otra categoría, créala nueva y mantén la original activa (para que las reglas automáticas del backend sigan funcionando).

P: ¿Crear una cuenta demora? R: No, es instantáneo. El formulario valida en frontend, manda al backend y la cuenta aparece en el grid en menos de 1 segundo.

P: ¿Puedo importar plan de cuentas por CSV? R: En esta versión, no. El alta es manual, una por una. Para implementaciones grandes, contacta a soporte para ver la opción de importación asistida.


Para registrar movimientos usando estas cuentas y categorías, continúa con Egresos manuales y revisa el resumen de la Contabilidad completa.