Saltar al contenido principal

89 publicaciones con la etiqueta "Accounting"

Ver todas las etiquetas

Registro de Impuestos en Beancount (El Enfoque Pragmático)

· Lectura de 9 minutos
Mike Thrift
Mike Thrift
Marketing Manager

Los impuestos pueden sentirse como una bestia especial y complicada en el mundo de las finanzas personales. Pero, ¿y si no lo fueran? ¿Y si pudieras tratarlos como cualquier otro flujo de dinero en tu libro mayor? Buena noticia: puedes. Al tratar los impuestos como simples movimientos de valor, tu libro mayor de Beancount se mantendrá limpio, fácil de consultar y, lo más importante, comprensible.

A continuación tienes un patrón práctico y sin complicaciones que puedes insertar en un archivo Beancount personal o de pequeña empresa. Es un sistema sencillo para manejar nóminas, pagos de impuestos e incluso esas molestas devoluciones que se cruzan al nuevo año. Cubriremos las cuentas esenciales que necesitas, recorreremos ejemplos del mundo real y te mostraremos las consultas exactas que debes ejecutar para obtener las respuestas que buscas.

2025-08-25-recording-taxes-in-beancount


Los Principios Fundamentales

Antes de sumergirnos en el código, acordemos algunas reglas simples. Estos principios mantienen las cosas lógicas y evitan dolores de cabeza futuros.

  • Separa “qué es” de “cuándo se mueve el efectivo”. 🗓️
    Este es el concepto más importante. Un gasto de impuesto pertenece al año en que generaste el ingreso (p. ej., 2024), aunque liquides la factura con el IRS en abril de 2025. Si no separas el momento del gasto del momento del pago, tus informes año tras año se volverán confusos y engañosos.

  • Mantén tu jerarquía de cuentas aburrida y simple. 📁
    Nombra tus cuentas claramente según el tipo de impuesto (p. ej., IncomeTax, SocialSecurity). Esto hace que tus consultas sean increíblemente simples. No satures los nombres de cuentas con nombres de proveedores o números de formulario como “W‑2” o “1099”; usa metadatos y etiquetas para esos detalles.

  • Abraza la acumulación para ajustes de fin de año. ⚖️
    Incluso para un libro mayor personal, usar una entrada de acumulación simple al final del año es la forma más limpia de lograr informes precisos. Significa reconocer un gasto o una devolución en el año correcto, aunque el dinero no se mueva hasta el siguiente. Es un pequeño paso extra que te ahorra gimnasia mental más adelante.

  • Escribe para tu yo futuro. 🧠
    Tu objetivo es la claridad. Sólo añade detalles extra, como el año fiscal, al nombre de una cuenta si realmente facilita tus consultas. Evita crear un nuevo conjunto de cuentas cada año (Expenses:Taxes:2024:Federal, Expenses:Taxes:2025:Federal, etc.) a menos que tengas una razón convincente. Una estructura plana suele ser más fácil de gestionar.


Esqueleto Minimalista de Cuentas

Aquí tienes un conjunto básico de cuentas para comenzar. Esta estructura está centrada en EE. UU., pero puedes adaptar fácilmente los nombres al sistema fiscal de tu país. Simplemente inserta estas directivas open en tu archivo Beancount.

; --- Impuestos Federales de EE. UU. sobre Ingresos y Nómina ---
; Para el dinero retenido de tu nómina
2024-01-01 open Expenses:Taxes:Federal:IncomeTax:Withheld USD
; Para pagos estimados o facturas del día de impuestos que pagas directamente
2024-01-01 open Expenses:Taxes:Federal:IncomeTax:Payments USD
; Para devoluciones de impuestos que recibes
2024-01-01 open Expenses:Taxes:Federal:IncomeTax:Refunds USD

; Tus contribuciones FICA
2024-01-01 open Expenses:Taxes:Federal:SocialSecurity USD
2024-01-01 open Expenses:Taxes:Federal:Medicare USD

; --- Otros Impuestos Comunes ---
; Para impuestos de venta/uso que pagas en compras
2024-01-01 open Expenses:Taxes:Sales USD

; --- Cuentas para Ajustes de Fin de Año (Opcional pero Recomendado) ---
; Cuenta temporal de retención para impuestos que debes pero aún no has pagado
2024-01-01 open Liabilities:AccruedTaxes:Federal:Income USD
; Cuenta temporal de retención para una devolución que te deben pero no has recibido
2024-01-01 open Assets:Tax:Receivable USD

Esta configuración separa los impuestos retenidos de los pagos directos y devoluciones, facilitando ver exactamente a dónde fue tu dinero. Las cuentas Liabilities y Assets son nuestra arma secreta para mantener la precisión de los informes de fin de año.


Ejemplo 1: La Nómina

Registremos una nómina típica donde los impuestos se retienen automáticamente. La clave es registrar primero tu salario bruto, y luego mostrar cómo se divide entre impuestos y el efectivo que realmente llega a tu cuenta bancaria.

2025-07-15 * "Employer Inc." "Salary for first half of July"
Income:Work:Salary -6,000.00 USD
Expenses:Taxes:Federal:IncomeTax:Withheld 1,200.00 USD
Expenses:Taxes:Federal:SocialSecurity 372.00 USD
Expenses:Taxes:Federal:Medicare 87.00 USD
Assets:Cash:Checking 4,341.00 USD

Esta única transacción cuenta toda la historia:

  • Ganaste $6,000 de ingreso bruto.
  • $1,200 fueron enviados al IRS como impuesto federal sobre la renta.
  • 372fueronalaSeguridadSocialy372 fueron a la Seguridad Social y 87 al Medicare.
  • Los $4,341 restantes son lo que recibiste neto.

Consejo profesional: Puedes adjuntar metadatos de tu talón de pago (como pay_period_end: "2025-07-15") a la transacción para crear una pista de auditoría fácil.


Ejemplo 2: Presentar tu Declaración (El Problema del Cruce de Años)

Este es el escenario que confunde a la gente: es abril de 2025 y estás presentando tus impuestos de 2024. Descubres que, después de toda la retención, aún debes $3,000 extra.

¿Cómo lo registras? Quieres que el gasto cuente para 2024, pero que el pago en efectivo ocurra en 2025. Aquí tienes dos formas excelentes de manejarlo.

Opción A: Acumulación Manual en Dos Pasos

Este método es puro Beancount, sin plugins. Es un proceso claro de dos pasos.

Paso 1: Reconocer el gasto al final del año fiscal.
En el último día de 2024, creas una entrada de “ajuste”. No se mueve efectivo todavía; solo reconoces el gasto y lo estacionas en una cuenta de pasivo temporal.

2024-12-31 * "Federal income tax true-up for 2024"
Expenses:Taxes:Federal:IncomeTax:Payments 3,000.00 USD
Liabilities:AccruedTaxes:Federal:Income -3,000.00 USD

Ahora tu estado de resultados de 2024 muestra correctamente este gasto de $3,000.

Paso 2: Registrar el pago en efectivo cuando ocurra.
En abril de 2025, cuando realmente envías el dinero al IRS, eliminas el pasivo.

2025-04-15 * "IRS" "Payment for 2024 tax return"
Liabilities:AccruedTaxes:Federal:Income 3,000.00 USD
Assets:Cash:Checking -3,000.00 USD

Tus informes de 2024 son correctos y tu flujo de efectivo de 2025 también. ¡Perfecto! Este mismo patrón funciona al revés para una devolución: solo usa Assets:Tax:Receivable en lugar de la cuenta de pasivo.

Opción B: Automatizarlo con un Plugin

Si prefieres mantener el pago en una sola transacción, un fantástico plugin de la comunidad llamado beancount_reds_plugins.effective_date puede ayudar. Permite asignar una “fecha efectiva” distinta a una línea de la transacción.

Primero, habilita el plugin en tu archivo principal de Beancount:
plugin "beancount_reds_plugins.effective_date"

Luego, puedes escribir una única transacción. El plugin la dividirá automáticamente detrás de escena para que tus informes sean precisos.

; Una entrada; el plugin se encarga del resto
2025-04-15 * "IRS" "Payment for 2024 tax return"
Assets:Cash:Checking -3,000.00 USD
Expenses:Taxes:Federal:IncomeTax:Payments 3,000.00 USD
effective_date: 2024-12-31

Aquí, la parte de efectivo se registra el 15 de abril de 2025, pero la parte del gasto se aplica retroactivamente al 31 de diciembre de 2024. Logra el mismo resultado que la Opción A con un flujo de trabajo distinto.


¿Y los Impuestos sobre las Ventas?

Para la mayoría de los libros personales, el impuesto sobre las ventas es sencillo. Si no lo reclamas, simplemente sepáralo como su propio gasto al momento de una compra.

2025-07-19 * "Local Grocery Store"
Expenses:Groceries 12.32 USD
Expenses:Taxes:Sales 1.28 USD
Assets:Cash:Checking -13.60 USD

Esto te permite rastrear fácilmente cuánto gastas en impuesto sobre las ventas durante el año. Si manejas un negocio que trata con IVA, usarías un sistema más formal con cuentas por pagar y por cobrar, pero el principio es el mismo.


Consultas que Realmente Ejecutarás

El objetivo de esta estructura es facilitar la obtención de respuestas. Aquí tienes algunas consultas BQL para visualizar tu panorama fiscal.

1. ¿Cuál fue mi impuesto federal sobre la renta total para 2024?

SELECT cost(sum(position))
WHERE account "Expenses:Taxes:Federal:IncomeTax"
AND date >= 2024-01-01 AND date < 2025-01-01;

2. ¿Cómo se desglosa ese total entre retenciones, pagos y devoluciones?

SELECT account, cost(sum(position))
WHERE account "Expenses:Taxes:Federal:IncomeTax"
AND date >= 2024-01-01 AND date < 2025-01-01
GROUP BY account
ORDER BY account;

3. ¿Tengo deudas fiscales pendientes o devoluciones por cobrar? (¡Útil para revisar tu trabajo!)

SELECT account, units(sum(position))
WHERE account "Liabilities:AccruedTaxes" OR account "Assets:Tax"
GROUP BY account
ORDER BY account;

Si esta consulta devuelve saldos distintos de cero, significa que tienes acumulaciones que aún no has liquidado.


Preguntas Frecuentes Rápidas

  • ¿Realmente necesito cuentas por año como Expenses:Taxes:2024?
    Probablemente no. El método de acumulación (o el plugin) mantiene una estructura plana limpia y legible. Sólo crea cuentas anuales si realmente facilitan tus consultas específicas.

  • ¿Puede Beancount calcular mis impuestos por mí?
    No directamente, pero puede preparar los datos. Algunos usuarios avanzados escriben scripts que canalizan los resultados de BQL a software de cálculo fiscal, lo que es excelente para estimar tu obligación durante el año.

  • ¿Esto constituye asesoramiento fiscal?
    No. Es un patrón de contabilidad para organizar tus datos. La contabilidad es sólida, pero siempre debes consultar a un profesional tributario para obtener asesoramiento específico a tu situación.


Lista de Verificación Lista para Usar

¿Listo para comenzar?

  1. Añade el esqueleto de cuentas a tu archivo Beancount (y adapta los nombres a tu país).
  2. Registra las nóminas empezando con el ingreso bruto y separando los asientos de impuestos.
  3. Al final del año, acumula los ajustes de pagos o devoluciones usando una cuenta de pasivo/activo (o usa el plugin effective_date).
  4. Rastrea las devoluciones como cuentas por cobrar y elimínalas cuando llegue el efectivo.
  5. Ejecuta las consultas BQL anteriores para verificar tus totales antes de presentar la declaración.

Mantén todo aburrido, mantén todo consistente, y la temporada de impuestos finalmente será solo otra parte de tu historia financiera, no un misterio por resolver.

Gastos acumulados en Beancount: Guía práctica (con ejemplos de libro contable copy-paste)

· Lectura de 8 minutos
Mike Thrift
Mike Thrift
Marketing Manager

Los gastos acumulados suenan abstractos hasta que los cierres de fin de mes empiezan a apilarse. Son una piedra angular de la contabilidad de acumulación adecuada, garantizando que tus informes financieros reflejen la realidad económica, no solo cuando el efectivo cambia de manos. Aquí tienes una guía clara, centrada en Beancount, de qué son, por qué importan y exactamente cómo registrarlos, revertirlos e informarlos en tu libro contable de texto plano.

TL;DR ⚡

  • Los gastos acumulados son costos que has incurrido en este período pero que aún no has pagado. Se registran como una obligación hasta que salga el efectivo.
  • En Beancount, esto es simple: debitas una cuenta Expenses: y acreditas una cuenta Liabilities:Accrued:. Más tarde, eliminas la obligación cuando pagas.
  • Para informar, puedes ver lo que debes a una fecha específica ejecutando un bean-query con CLOSE ON y CLEAR para obtener una instantánea limpia del balance.

2025-08-24-accrued-expenses-in-beancount-a-practical-guide

¿Qué es un gasto acumulado?

Un gasto acumulado es un costo que una empresa ha incurrido, pero que aún no ha pagado. Se registra cuando se recibe el servicio o se incurre el costo, incluso si la factura no ha llegado o el pago aún no es exigible. Esta práctica sigue el principio de correlación de la contabilidad de acumulación, que dicta que los gastos deben registrarse en el mismo período que los ingresos que ayudaron a generar.

Ejemplos comunes incluyen:

  • Salarios devengados por los empleados al final de un mes pero pagados el siguiente.
  • Servicios públicos (electricidad, agua) que usaste en diciembre pero que no se facturarán hasta enero.
  • Intereses de un préstamo que se han acumulado durante el mes pero que aún no se han retirado de tu cuenta.

Al registrar estos costos cuando ocurren, obtienes una imagen mucho más fiel del desempeño financiero de tu empresa para ese período.

Cómo lo ve Beancount (en 30 segundos)

Beancount es un sistema de contabilidad de doble entrada en texto plano. Todo es una directiva o transacción fechada en un archivo de texto. El sistema se basa en cinco tipos de cuentas principales: Activos, Pasivos, Patrimonio, Ingresos y Gastos.

Las entradas siempre se ordenan por fecha. Un detalle clave es que las aserciones balance se verifican antes de que se procesen las transacciones del mismo día. Esto es importante al colocar verificaciones y asientos de reversión.

Finalmente, el lenguaje bean-query ofrece una forma poderosa, similar a SQL, de generar informes. Con operadores como OPEN ON, CLOSE ON y CLEAR, puedes crear vistas precisas “a fecha” para los estados financieros.

Tu plan de cuentas (sugerido)

Un plan de cuentas limpio y jerárquico es tu mejor aliado. Para los gastos acumulados, la estructura es sencilla. Necesitarás:

  • Una cuenta de gasto: p. ej., Expenses:Utilities, Expenses:Payroll:Wages
  • Una cuenta de pasivo correspondiente: p. ej., Liabilities:Accrued:Utilities, Liabilities:Accrued:Payroll
  • Tu cuenta de efectivo: p. ej., Assets:Bank:Checking

Beancount impone los cinco tipos de cuenta de nivel superior. Mantener tus nombres de cuenta organizados facilita las consultas y los informes a futuro.

El patrón básico (sin plugin, sin magia)

Esta es la forma más directa de manejar acumulaciones en Beancount. Implica dos pasos: acumular el gasto al final del mes y eliminar la obligación cuando pagas.

Paso 1: Acumular el gasto al final del mes

En el último día del período, registras el gasto y creas la obligación.

2025-02-28 * "Accrue February electricity" #accrual
Expenses:Utilities 120.00 USD
Liabilities:Accrued:Utilities

Paso 2: Eliminar la acumulación al pagar

Cuando llega la factura y la pagas, no vuelves a tocar la cuenta de gasto. En su lugar, debitas la cuenta de pasivo para eliminarla.

2025-03-05 * "Pay Feb electricity - City Power"
Liabilities:Accrued:Utilities 120.00 USD
Assets:Bank:Checking

Este es el enfoque más limpio para equipos pequeños. Coloca correctamente el gasto en febrero y asegura que no lo cuentes dos veces en marzo. Observa que en Beancount, dejar una cantidad en blanco permite que el sistema balancee automáticamente la transacción.

Alternativa: Asiento de reversión el día 1

Si prefieres el estilo clásico de contabilidad “auto‑reversión”, puedes publicar el opuesto de tu asiento de acumulación el primer día del mes siguiente. Luego, registras la factura real al gasto como lo harías normalmente.

Paso 1: Acumular al final del mes (igual que antes)

2025-02-28 * "Accrue February electricity" #accrual
Expenses:Utilities 120.00 USD
Liabilities:Accrued:Utilities

Paso 2: Revertir el primer día del mes siguiente

2025-03-01 * "Reverse Feb electricity accrual" #reversal
Liabilities:Accrued:Utilities 120.00 USD
Expenses:Utilities

Paso 3: Registrar el pago como de costumbre

2025-03-05 * "City Power - February bill"
Expenses:Utilities 120.00 USD
Assets:Bank:Checking

Aviso sobre verificaciones: Recuerda que las aserciones balance se evalúan antes de las transacciones del mismo día. Si deseas comprobar el saldo de Liabilities:Accrued:Utilities, coloca la aserción en 2025-02-28 para confirmar la acumulación o en 2025-03-01 después del asiento de reversión para confirmar que es cero. Colocarla antes de la reversión en 2025-03-01 provocará un error falso.

Seis acumulaciones comunes (patrones copy‑paste) 📋

Aquí tienes ejemplos listos para usar en acumulaciones empresariales habituales.

1. Alquiler no facturado

2025-01-31 * "Accrue January rent" #accrual
Expenses:Rent 3000.00 USD
Liabilities:Accrued:Rent

2. Salarios devengados pero no pagados

2025-03-31 * "Accrue March wages" #accrual
Expenses:Payroll:Wages 8500.00 USD
Liabilities:Accrued:Payroll

3. Pago de vacaciones (PTO) devengado

2025-03-31 * "Accrue PTO earned in March" #accrual
Expenses:Payroll:PTO 900.00 USD
Liabilities:Accrued:Payroll

4. Intereses acumulados sobre un préstamo

2025-02-29 * "Accrue monthly loan interest" #accrual
Expenses:Interest 210.00 USD
Liabilities:Accrued:Interest

5. Honorarios profesionales (auditoría/legal)

2025-12-31 * "Accrue year-end audit fees" #accrual
Expenses:Professional:Audit 4200.00 USD
Liabilities:Accrued:Professional

6. Servicios públicos usados pero no facturados

2025-04-30 * "Accrue April utilities" #accrual
Expenses:Utilities 95.00 USD
Liabilities:Accrued:Utilities

Informes: “¿Qué debo a una fecha determinada?”

bean-query es tu herramienta para obtener respuestas. Aquí tienes cómo obtener una instantánea adecuada del balance de tus gastos acumulados.

Obtener todos los saldos de pasivos acumulados al final del período

Esta consulta te da el saldo de cada cuenta de pasivo acumulado al 31 de marzo de 2025.

bean-query main.beancount '
SELECT account, UNITS(SUM(position)) AS balance
FROM OPEN ON 2025-01-01 CLOSE ON 2025-04-01 CLEAR
WHERE account "^Liabilities:Accrued"
GROUP BY 1
ORDER BY 1;
'
  • OPEN ON establece los saldos iniciales al comienzo del período.
  • CLOSE ON trunca las transacciones antes de esa fecha (es exclusivo). Por eso usamos 2025-04-01 para obtener datos hasta e incluyendo 2025-03-31.
  • CLEAR anula Ingresos y Gastos, dándote una vista limpia del balance (Activos, Pasivos, Patrimonio).

Ver un registro de todas las anotaciones de acumulación

Si deseas ver el historial bruto de transacciones para tus cuentas de acumulación:

bean-query main.beancount '
SELECT date, payee, narration, position
WHERE account "^Liabilities:Accrued"
ORDER BY date;
'

Obtener un total único de todas las acumulaciones

Para un resumen rápido del total que debes:

bean-query main.beancount '
SELECT UNITS(SUM(position)) AS total_accruals
FROM OPEN ON 2025-01-01 CLOSE ON 2025-04-01 CLEAR
WHERE account "^Liabilities:Accrued";
'

Controles y “gotchas” específicos de Beancount

  • Momento de las aserciones de balance: Como se mencionó, las aserciones verifican el balance al inicio del día. 2025-03-01 balance … se ejecuta antes de cualquier transacción del 2025-03-01. Planifica en consecuencia.
  • Nomenclatura y jerarquía: Un árbol ordenado como Liabilities:Accrued:* no es solo estética. Facilita tus consultas y hace que tus informes sean instantáneamente comprensibles.
  • Uso cuidadoso de pad: La directiva pad puede corregir saldos de apertura, pero evita usarla para “arreglar” acumulaciones recurrentes. Las entradas explícitas proporcionan una pista de auditoría clara.
  • Informes “a fecha”: Para instantáneas de balance, siempre prefiere OPEN … CLOSE … CLEAR en bean-query. Así evitas que cuentas de ingresos y gastos contaminen tus totales de pasivo.

Prepagado vs. Acumulado (contraste rápido)

Es fácil confundirlos. Son imágenes espejo:

  • Gasto acumulado: Servicio consumido ahora, efectivo pagado después. Genera un pasivo.
  • Gasto prepagado: Efectivo pagado ahora, servicio consumido después. Genera un activo.

La lógica contable es la misma en Beancount; solo cambian las cuentas (Assets:Prepaid:* vs. Liabilities:Accrued:*).

Plantilla lista para usar (inicio del archivo)

Estos son los directivos open que necesitarás para los ejemplos usados en este artículo. Añádelos al principio de tu archivo de libro contable una sola vez.

; --- Accounts (open once) ---
2025-01-01 open Assets:Bank:Checking
2025-01-01 open Expenses:Utilities
2025-01-01 open Expenses:Payroll:Wages
2025-01-01 open Expenses:Interest
2025-01-01 open Expenses:Professional:Audit
2025-01-01 open Liabilities:Accrued:Utilities
2025-01-01 open Liabilities:Accrued:Payroll
2025-01-01 open Liabilities:Accrued:Interest
2025-01-01 open Liabilities:Accrued:Professional

Notas finales

Si llevas tus libros bajo base de efectivo, no registrarás acumulaciones en absoluto: los gastos se registran simplemente cuando se pagan. Si trabajas bajo base de acumulación, usar los patrones anteriores es esencial para correlacionar costos con el período en que consumiste el servicio.

Los ejemplos aquí ofrecen una guía educativa general. Consulta siempre a tu contador público certificado para tratamientos específicos de la industria, especialmente en cuanto a bonos, impuestos sobre nómina y umbrales de capitalización.

Depreciación acumulada (para Beancount): una guía práctica, de texto plano

· Lectura de 9 minutos
Mike Thrift
Mike Thrift
Marketing Manager

Si llevas un registro de los activos fijos en tu contabilidad —portátiles, cámaras, maquinaria o incluso mobiliario de oficina— tus libros deben reflejar su valor decreciente. Esto implica dos conceptos clave: depreciación (el gasto) y su total acumulado, depreciación acumulada. Esta guía explica ambos en lenguaje sencillo y luego muestra exactamente cómo modelarlos en Beancount con ejemplos listos para copiar y pegar, incluyendo opciones poderosas de automatización.


2025-08-23-accumulated-depreciation

¿Qué es la depreciación acumulada?

Depreciación acumulada es la suma total de la depreciación que se ha registrado contra un activo desde el día en que se puso en servicio. Piensa en ella como una cuenta corriente. No es un nuevo tipo de gasto —es simplemente la suma hasta la fecha de todos los cargos de depreciación pasados para ese activo.

En los estados financieros, verás la depreciación acumulada emparejada con el precio original del activo. Esto permite que cualquiera que lea tus libros vea tanto el costo histórico (lo que pagaste) como el valor neto en libros (lo que vale actualmente en tus libros).

Un detalle crucial es que la depreciación acumulada es una cuenta contra‑activo. Puede sonar complejo, pero es una idea simple:

  • Es una cuenta de "activo", por lo que vive en la sección Assets de tu plan de cuentas.
  • Sin embargo, lleva un saldo acreedor (un valor negativo en las cuentas de activo de Beancount), lo que reduce el valor del activo fijo relacionado.

¿Dónde aparece en el balance general?

La depreciación acumulada suele aparecer en el balance directamente debajo del activo fijo al que se refiere. Por ejemplo:

Equipo: Computadoras$3,000.00
Menos: Depreciación acumulada($1,000.00)
Equipo: Computadoras, Neto$2,000.00

Muchos estados financieros simplifican esto mostrando una sola línea como “Propiedad, planta y equipo, neto”. Ese número único representa el costo histórico total de todos los activos menos su depreciación acumulada total, dándote el valor neto en libros final.


¿Cómo se calcula la depreciación?

Existen varios métodos para calcular la depreciación. El que elijas determina cuánto gasto registras cada período, lo que a su vez se suma al total de depreciación acumulada. Dos familias comunes de métodos son:

  • Línea recta (SL): Es el método más sencillo y común para propósitos contables. Gastas una cantidad igual del valor del activo en cada período de su vida útil. Por ejemplo, un portátil de 3,000conunavidauˊtilde36meses(3an~os)sedepreciarıˊaa3,000 con una vida útil de 36 meses (3 años) se depreciaría a 83.33 por mes.
  • Métodos fiscales (p. ej., MACRS en EE. UU.): A efectos fiscales, los gobiernos suelen definir calendarios acelerados específicos. En EE. UU., el Sistema de Recuperación de Costos Acelerado Modificado (MACRS) permite tomar deducciones de depreciación mayores en los primeros años de vida del activo. Beancount puede manejar fácilmente estos calendarios —solo necesitas calcular los montos según las tablas oficiales (como las de la Publicación 946 del IRS) y generar los asientos contables correspondientes.

Fórmula (Línea recta)

Depreciación periódica = CostoValor residualVida uˊtil\frac{\text{Costo} - \text{Valor residual}}{\text{Vida útil}}

Depreciación acumulada (en la fecha t) = (Depreciacioˊn perioˊdica hasta t)\sum (\text{Depreciación periódica hasta } t)

El valor residual es el valor estimado que tendrá el activo al final de su vida útil. Por simplicidad, a menudo se asume que es cero.


El método Beancount: modelar costo y depreciación acumulada

Para rastrear correctamente los activos fijos en Beancount mientras preservas su costo original, usarás un par de cuentas de activo para cada categoría, más una cuenta de gasto.

  • Assets:Equipment:Computers:Cost (para guardar el costo histórico)
  • Assets:Equipment:Computers:AccumDep (el contra‑activo, que se acreditará con el tiempo)
  • Expenses:Depreciation:Computers (para registrar el gasto periódico)

Esta estructura refleja la práctica contable estándar y es el enfoque recomendado para gestionar la depreciación de activos fijos en Beancount.


Opción A: Asientos manuales de línea recta

Este es el método más directo. Controlas cada asiento, lo que es excelente para entender la mecánica.

1. Abre las cuentas necesarias

2025-01-01 open Assets:Bank:Checking
2025-01-01 open Assets:Equipment:Computers:Cost
2025-01-01 open Assets:Equipment:Computers:AccumDep
2025-01-01 open Expenses:Depreciation:Computers

2. Registra la compra (al costo histórico)

Cuando compras el activo, debitas la cuenta Cost.

2025-01-20 * "Compra MacBook Pro"
Assets:Equipment:Computers:Cost 3000.00 USD
Assets:Bank:Checking -3000.00 USD

3. Registra la depreciación mensual

Cada mes registrarás el gasto de depreciación. Para un activo de 3,000durante36meses,ladepreciacioˊnmensuales3,000 durante 36 meses, la depreciación mensual es 3000 ÷ 36 = $83.33.

La transacción implica debitar la cuenta de gasto y acreditar la cuenta contra‑activo.

2025-02-28 * "Depreciación mensual - MacBook Pro (SL 36 meses)"
Expenses:Depreciation:Computers 83.33 USD
Assets:Equipment:Computers:AccumDep -83.33 USD ; Este es el crédito al contra‑activo

Repetirías este asiento cada mes durante 36 meses. El saldo en Assets:Equipment:Computers:AccumDep se volverá más negativo con el tiempo, reduciendo el valor neto en libros del activo.

Cheque rápido: Puedes verificar fácilmente el valor neto en libros en el Balance de Fava o ejecutando una consulta rápida:

bean-query myledger.bean "SELECT account, SUM(position) WHERE account   'Assets:Equipment:Computers:(Cost|AccumDep)' GROUP BY account"

La suma de los saldos de estas dos cuentas es tu valor neto en libros.


Opción B: Automatizar con el plugin amortize de Fava

Si usas Fava (la interfaz web popular para Beancount) y tu depreciación es una cantidad fija cada mes, puedes automatizarla.

Primero, habilita el plugin al inicio de tu archivo Beancount:

plugin "fava.plugins.amortize_over"

Luego, crea una única transacción que defina todo el calendario de depreciación.

; 1. Registra la compra inicial como de costumbre
2025-01-20 * "Compra MacBook Pro"
Assets:Equipment:Computers:Cost 3000.00 USD
Assets:Bank:Checking -3000.00 USD

; 2. Configura el calendario de depreciación
2025-01-20 * "Calendario de depreciación - MacBook Pro"
amortize_months: 36
Expenses:Depreciation:Computers 3000.00 USD
Assets:Equipment:Computers:AccumDep -3000.00 USD

El plugin verá esta transacción y generará asientos virtuales de $83.33 cada mes durante 36 meses. Estos asientos no se escriben en tu archivo .bean pero aparecen en todos los informes. Es perfecto para depreciación lineal, pero no funciona con calendarios irregulares como MACRS.


Opción C: Generar asientos periódicos con un plugin externo

Si prefieres que se escriban transacciones reales (no virtuales) en tus archivos pero aún deseas automatización, un generador de asientos periódicos es una excelente opción. Uno de los más populares es beancount-periodic de Dallas Lu. Este plugin puede configurarse para crear asientos fechados en tu nombre, dándote el control de los asientos manuales con la comodidad de la automatización.


Ver resultados: costo, depreciación acumulada y valor neto en libros

Independientemente del método que elijas, tu Balance mostrará tanto las cuentas Cost como AccumDep bajo tus Activos. La suma de ambas es tu valor neto en libros. Esta presentación —costo bruto menos depreciación acumulada— es exactamente lo que contadores y analistas financieros esperan ver. Proporciona total transparencia sobre la edad y el valor de tus activos.


Baja de un activo (venta, desguace o retiro)

Cuando un activo llega al final de su vida, lo vendes, lo desguazas o lo retiras. Para eliminarlo de tus libros, debes:

  1. Eliminar su costo histórico.
  2. Eliminar su depreciación acumulada asociada.
  3. Registrar cualquier efectivo recibido.
  4. Registrar cualquier ganancia o pérdida resultante (la diferencia entre el efectivo recibido y el valor neto en libros).

Ejemplo: venta con ganancia

Supongamos que vendes el MacBook Pro el 15 de junio de 2027.

  • Costo original: $3,000
  • Depreciación acumulada al momento de la venta: -$2,500
  • Valor neto en libros: 3,0003,000 - 2,500 = $500
  • Precio de venta: $800
  • Ganancia por venta: 800(ingreso)800 (ingreso) - 500 (valor neto) = $300

Asiento Beancount para registrar la baja:

2027-06-15 * "Venta MacBook Pro"
Assets:Bank:Checking 800.00 USD ; Efectivo recibido
Assets:Equipment:Computers:AccumDep 2500.00 USD ; Débito para anular el contra‑activo
Assets:Equipment:Computers:Cost -3000.00 USD ; Crédito para eliminar el costo histórico
Income:Gains:AssetDisposals -300.00 USD ; Crédito para registrar la ganancia

Si los ingresos hubieran sido solo 400(peˊrdidade400 (pérdida de 100), registrarías la diferencia en una cuenta Expenses:Losses:AssetDisposals con un importe positivo (débito).


Preguntas frecuentes (rápidas)

  • ¿La depreciación acumulada es un activo o un pasivo?
    Ninguno. Es un contra‑activo. Está ubicado en la sección de activos del balance, pero tiene saldo acreedor, lo que reduce el valor total del activo.

  • ¿Alguna vez publico directamente en la cuenta Cost después de la compra?
    Generalmente, no. El objetivo de la cuenta contra‑activo es preservar el costo histórico. Todas las reducciones de valor por depreciación deben registrarse en ...:AccumDep.

  • ¿Puedo usar Beancount para calendarios MACRS (fiscales)?
    Sí. Calcula los montos según las tablas del IRS y genera los asientos con el método manual o con un plugin externo.

  • ¿El plugin amortize funciona con MACRS?
    No. Sólo soporta depreciación lineal. Para MACRS deberás generar los asientos manualmente o usar un plugin externo que permita calendarios personalizados.

  • ¿Qué pasa si mi activo tiene un valor residual distinto de cero?
    Inclúyelo en la fórmula de línea recta. En los ejemplos hemos asumido valor residual cero para simplificar.


Glosario de términos clave

TérminoDefinición (español)
DepreciaciónDistribución del costo de un activo fijo a lo largo de su vida útil.
Depreciación acumuladaSuma de todas las depreciaciones registradas contra un activo.
Contra‑activoCuenta que tiene saldo opuesto al de una cuenta de activo normal; en este caso, reduce el valor del activo.
Valor neto en librosCosto histórico menos depreciación acumulada; representa el valor contable actual del activo.
MACRSSistema de depreciación acelerada usado en EE. UU. para propósitos fiscales.
FavaInterfaz web para visualizar y consultar archivos Beancount.

Referencias y recursos útiles

  • Documentación oficial de Beancount – explica la sintaxis y el manejo de saldos negativos.
  • Publicación 946 del IRS – tablas oficiales para MACRS (EE. UU.).
  • Plugin beancount-periodic – genera asientos periódicos automáticamente.
  • Guía de contabilidad de activos fijos – conceptos de vida útil, valor residual y métodos de depreciación.

Conclusión

La depreciación acumulada es esencial para representar fielmente el valor de los activos fijos a lo largo del tiempo. Con Beancount puedes mantener una contabilidad clara y reproducible, separando el costo histórico del contra‑activo que registra la depreciación. Ya sea que prefieras registrar cada asiento manualmente o aprovechar la automatización de Fava o de plugins externos, esta guía te brinda los fundamentos y los ejemplos prácticos necesarios para implementar una gestión financiera sólida y transparente.

Tarifas de Vendedor de Amazon (2025): Qué Son—y Cómo Registrarlas en Beancount

· Lectura de 9 minutos
Mike Thrift
Mike Thrift
Marketing Manager

Vender en Amazon es una forma poderosa de llegar a millones de clientes, pero la estructura de tarifas de la plataforma puede sentirse como un laberinto. Si eres un operador que valora libros contables limpios, auditables y de doble entrada, rastrear estos costos con precisión es innegociable. Esta guía desglosa las tarifas del marketplace estadounidense de Amazon en 2025 y te muestra exactamente cómo registrarlas usando la herramienta de contabilidad en texto plano, Beancount.

TL;DR ⚡

2025-08-21-amazon-seller-fees-2025

  • Encontrarás un conjunto de cargos recurrentes de Amazon: Selling plan, Referral, Closing (media), FBA fulfillment & storage, Inbound placement, Low‑inventory‑level, Returns processing, Refund administration, y una High‑volume listing fee para catálogos muy grandes.
  • Mantén una cuenta separada Assets:Amazon:Clearing. Registra allí las ventas y tarifas; cuando Amazon realiza el pago, transfiere el neto a tu banco. Esto hace que la conciliación sea muy sencilla.
  • Rastrea cada SKU como su propia commodity (p.ej., SKU:WATER-BOTTLE) para que Beancount pueda calcular automáticamente tu Cost of Goods Sold (COGS) por lote.
  • Puedes conciliar rápidamente importando los informes de settlement o de rango de fechas y mapeando los “transaction types” de Amazon directamente a tus cuentas de gasto en Beancount.

The Amazon Fee Map (US Marketplace)

A continuación, un desglose de las tarifas más comunes que verás en 2025.

Selling Plan Fee

Esta es tu tarifa de suscripción básica para acceder al marketplace.

  • Individual Plan: Sin tarifa mensual. En su lugar, pagas $0.99 por cada artículo que vendas.
  • Professional Plan: Una tarifa fija de $39.99 al mes, que elimina el cargo por artículo. Esta es la opción estándar para cualquier vendedor serio. Todas las demás tarifas de venta se aplican además de esta.

Referral Fee

Esta es la comisión de Amazon por cada venta.

Es un porcentaje del precio total de venta del artículo (incluyendo envío y cualquier envoltorio de regalo). La tasa depende totalmente de la categoría del producto. La mayoría de las categorías están en el rango 8–15%, pero algunas usan tarifas escalonadas (p.ej., 15% en los primeros $500 y 8% en el resto). Ciertas categorías también tienen una tarifa mínima de referencia, a menudo $0.30. Siempre verifica la tabla de tarifas actual para tu categoría específica.

Closing Fee (Media Categories)

Si vendes artículos de medios como libros, música, video o DVDs, Amazon cobra una tarifa de cierre adicional fija de $1.80 por artículo.

FBA Fulfillment Fees

Estas son las tarifas por unidad de picking, packing y envío al usar Fulfillment by Amazon (FBA). El costo varía según el tamaño y peso del artículo. Amazon actualiza estas tablas de tarifas periódicamente. Para 2025, las tarifas fuera de pico volvieron a los niveles de 2024 el 15 de enero de 2025. Consulta siempre la tabla de tarifas FBA actual para encontrar el tier de tamaño exacto de tu producto y la tarifa asociada.

Monthly Storage & Aged-Inventory Surcharge (FBA)

Amazon cobra por el espacio que tu inventario ocupa en sus centros de cumplimiento.

  • Monthly Storage: Facturado por pie cúbico.
  • Aged-Inventory Surcharge: Una tarifa mensual adicional aplicada al inventario que ha permanecido demasiado tiempo en un centro de cumplimiento. Esta se suma a la tarifa de almacenamiento mensual regular.

Inbound Placement Service Fee (FBA)

Esta es una tarifa por unidad vinculada a cómo envías inventario a Amazon. Está diseñada para cubrir los costos de distribuir tus productos a través de su red de cumplimiento. Algunos programas, como “New Selection”, pueden eximir temporalmente a productos nuevos hasta ciertos límites.

Low-Inventory-Level Fee (FBA)

Esta tarifa se aplica a productos de tamaño estándar con niveles de inventario consistentemente bajos respecto a la demanda del cliente. Amazon mide esto con una métrica llamada “historical days of supply”. Si tu nivel de stock para un artículo popular cae por debajo del umbral (generalmente 28 días), esta tarifa se activa.

Returns Processing Fee (FBA)

Para productos en categorías con tasas de devolución superiores a lo típico (como ropa y calzado), Amazon puede cobrar una tarifa de procesamiento de devoluciones por cada devolución del cliente. Algunas unidades “New Selection” están exentas de esta tarifa hasta un cierto límite.

Refund Administration Fee

Cuando emites un reembolso al cliente por un pedido, Amazon te devuelve la tarifa de referencia que pagaste. Sin embargo, retiene una parte como tarifa de procesamiento. Es el menor de $5.00 o 20 % de la tarifa de referencia para ese artículo.

High-Volume Listing Fee (Huge Catalogs)

Esta tarifa solo afecta a vendedores con catálogos masivos. Si tienes más de 1.5 millones de SKUs activos, Amazon cobra una tarifa mensual de $0.001 por cada SKU elegible que supere ese umbral.

Nota: Las tarifas y políticas pueden variar según el país, la región y la categoría. Siempre revisa las páginas de ayuda locales de Seller Central antes de registrar.


How These Fees Show Up in Your Reports 🧾

Puedes encontrar todos estos datos en Seller Central. Los dos informes más útiles para la contabilidad son:

  1. Date Range Reports (Payments → Date Range Reports): Proporcionan un resumen de tus ingresos, gastos, impuestos y transferencias netas para un período específico. Son perfectos para importación de libro mayor y conciliación a alto nivel.
  2. Settlement Files (p.ej., Flat File V2): Estos archivos desglosan cada transacción, mostrando el tipo de tarifa, ID del pedido, monto y fecha. Son los datos granulares que usarás para mapear todo correctamente.

A Beancount-First Way to Record Amazon Activity

Aquí tienes cómo traducir el complejo mundo de Amazon a entradas limpias y simples de Beancount.

1. Set Up a Minimal Chart of Accounts

Primero, define las cuentas que necesitarás. Esta estructura sencilla cubre todo.

; --- ASSETS ---
Assets:Amazon:Clearing ; Your Amazon "clearing" account
Assets:Bank:Checking ; Your bank account (example)

; --- INCOME ---
Income:Sales:Amazon ; Revenue from Amazon sales

; --- EXPENSES ---
Expenses:Amazon:Fees:SellingPlan
Expenses:Amazon:Fees:Referral
Expenses:Amazon:Fees:Closing
Expenses:Amazon:Fees:FBAFulfillment
Expenses:Amazon:Fees:FBAStorage
Expenses:Amazon:Fees:InboundPlacement
Expenses:Amazon:Fees:LowInventoryLevel
Expenses:Amazon:Fees:ReturnsProcessing
Expenses:Amazon:Fees:RefundAdministration
Expenses:Amazon:Fees:HighVolumeListing

; --- OTHER ---
COGS:Amazon:Products ; Cost of Goods Sold

Beancount’s ability to track inventory lots and cost basis is a superpower, so keep each SKU as its own commodity (e.g., SKU:WATER-BOTTLE). This lets Beancount automatically compute your Cost of Goods Sold (COGS) by lot.

2. Book Each Sale and Its Fees

Registra cada venta y sus tarifas asociadas.

2025-03-15 * "Amazon Sale"
Assets:Amazon:Clearing $120.00
Income:Sales:Amazon $100.00
Expenses:Amazon:Fees:Referral $10.00
Expenses:Amazon:Fees:Closing $1.80
Expenses:Amazon:Fees:FBAFulfillment $5.00
Expenses:Amazon:Fees:FBAStorage $2.20
Expenses:Amazon:Fees:InboundPlacement $0.50
Expenses:Amazon:Fees:LowInventoryLevel $0.30
Expenses:Amazon:Fees:RefundAdministration $0.10
Expenses:Amazon:Fees:HighVolumeListing $0.05

Why it balances:

  • La suma de los débitos (Assets:Amazon:Clearing) equivale a la suma de los créditos (Income:Sales:Amazon + todas las cuentas de gasto). Cada monto está representado con su símbolo de moneda y sin espacios extraños, manteniendo la claridad contable.

2. Book Each Sale and Its Fees

Puedes registrar cada venta y sus tarifas de la siguiente manera:

2025-04-01 * "Amazon Sale - Water Bottle"
Assets:Amazon:Clearing $25.00
Income:Sales:Amazon $20.00
Expenses:Amazon:Fees:Referral $3.00
Expenses:Amazon:Fees:Closing $1.80
Expenses:Amazon:Fees:FBAFulfillment $2.00
Expenses:Amazon:Fees:FBAStorage $1.20
Expenses:Amazon:Fees:InboundPlacement $0.50
Expenses:Amazon:Fees:LowInventoryLevel $0.30
Expenses:Amazon:Fees:RefundAdministration $0.10
Expenses:Amazon:Fees:HighVolumeListing $0.05

Why it balances:

  • El débito total en Assets:Amazon:Clearing (25.00)sereparteentreelingresodelaventa(Income:Sales:Amazon25.00) se reparte entre el ingreso de la venta (`Income:Sales:Amazon` 20.00) y todas las cuentas de gasto listadas. La suma de los créditos coincide con el débito, garantizando que la ecuación contable esté equilibrada.

3. Record the Payout

Cuando Amazon envía el pago a tu cuenta bancaria, registra la transferencia del neto.

2025-04-05 * "Amazon Payout"
Assets:Bank:Checking $15.00
Assets:Amazon:Clearing -$15.00

Esto refleja que el dinero salió de la cuenta de “clearing” de Amazon y entró en tu banco.

4. Handle Storage, Aged Inventory, and Inbound Placement

Gestiona las tarifas de almacenamiento, inventario antiguo y servicio de colocación de entrada de la siguiente forma:

2025-05-01 * "Monthly Storage"
Assets:Amazon:Clearing $30.00
Expenses:Amazon:Fees:MonthlyStorage $30.00
2025-06-01 * "Aged-Inventory Surcharge"
Assets:Amazon:Clearing $12.00
Expenses:Amazon:Fees:AgedInventorySurcharge $12.00
2025-07-01 * "Inbound Placement Service"
Assets:Amazon:Clearing $8.00
Expenses:Amazon:Fees:InboundPlacement $8.00

5. Refunds & Returns

Registra reembolsos y devoluciones de la siguiente manera:

2025-08-10 * "Amazon Refund"
Assets:Amazon:Clearing $5.00
Expenses:Amazon:Fees:RefundAdministration $5.00

Esto muestra que la tarifa de administración del reembolso se ha registrado como gasto.


Importing & Reconciling Quickly

Para acelerar la importación y conciliación:

  • Importa tus archivos de settlement o de rango de fechas a tu herramienta de contabilidad.

  • Mapea los “transaction types” de Amazon a las cuentas de gasto de Beancount:

    • OrderIncome:Sales:Amazon
    • RefundExpenses:Amazon:Fees:RefundAdministration
    • FeeExpenses:Amazon:Fees:<TipoDeTarifa> (por ejemplo, Referral, FBAFulfillment, etc.)
    • StorageFeeExpenses:Amazon:Fees:MonthlyStorage
    • AgedInventoryFeeExpenses:Amazon:Fees:AgedInventorySurcharge
    • InboundPlacementFeeExpenses:Amazon:Fees:InboundPlacement

Esto permite que la mayor parte del proceso sea automático y libre de errores manuales.


Practical Guardrails That Save Money (and Keystrokes) 💰

  • Mantén la cuenta Assets:Amazon:Clearing separada: Evita mezclar ingresos y gastos con otras operaciones bancarias.
  • Usa SKUs como commodities: Facilita el cálculo automático de COGS y reduce la necesidad de ajustes manuales.
  • Automatiza la importación de informes: Configura scripts o herramientas que descarguen y conviertan los archivos de settlement a formato Beancount.
  • Revisa siempre las tarifas actuales: Las tarifas pueden cambiar; mantener un registro actualizado evita sorpresas al final del mes.

Ready-to-Use Beancount Template

Esta plantilla está lista para ser copiada en tu archivo de contabilidad Beancount.

➡️ Descargar la Plantilla


References & Further Reading


One Last Tip

Aprovecha los metadatos de Beancount (etiquetas, notas y comentarios) para añadir contexto a transacciones complejas, como campañas promocionales o ajustes de inventario. Por ejemplo, puedes usar ; para comentarios dentro de los bloques de código o note: para añadir explicaciones que no afecten al balance. Esto te ayudará a mantener claridad a medida que tu negocio crezca.

¡Feliz registro!

¿Qué es Cuentas por Pagar? Una Guía Amigable con Beancount para Rastrear Facturas de Proveedores en Texto Plano

· Lectura de 9 minutos
Mike Thrift
Mike Thrift
Marketing Manager

Las cuentas por pagar (AP) son el dinero que tu negocio debe a sus proveedores por bienes o servicios que ya has recibido pero que aún no has pagado. En contabilidad, AP se clasifica como un pasivo corriente en tu balance: una cantidad que normalmente se debe pagar dentro del próximo año, y con frecuencia dentro de 30 a 60 días.

Este concepto es central en la contabilidad de acumulación, donde registras el gasto y el pasivo correspondiente en el momento en que llega la factura, no cuando realmente envías el efectivo. Esta guía te mostrará cómo gestionar todo el flujo de trabajo de AP de forma limpia y eficiente usando la herramienta de contabilidad en texto plano, Beancount.

2025-08-20-what-is-accounts-payable


Resumen rápido

Antes de entrar en detalles, cubramos lo esencial:

  • Cuentas por pagar (AP) representa tus deudas a corto plazo con los proveedores. La encontrarás bajo la sección Liabilities de tu balance.
  • Acumulación vs. Efectivo: AP solo existe si llevas tus libros bajo una base de acumulación. Beancount soporta totalmente los flujos de trabajo de acumulación, y su interfaz web, Fava, mostrará tus pasivos correctamente.
  • AP vs. AR: Es simple: las cuentas por pagar son lo que debes, mientras que las cuentas por cobrar (AR) son lo que otros te deben.

Dónde vive AP en Beancount (y Fava)

Para comenzar a rastrear AP, primero debes declarar una cuenta para ello en tu libro mayor. Una convención estándar es:

Liabilities:AccountsPayable

Opcionalmente puedes crear subcuentas para proveedores principales (p. ej., Liabilities:AccountsPayable:ForestPaintSupply).

En Fava, esta cuenta aparecerá en tu Balance bajo Liabilities. Puedes hacer clic para profundizar y ver una lista de todos los ítems abiertos y pagados, dándote una visión clara de tus obligaciones. Incluso puedes ver esto en acción en el libro mayor de ejemplo público de Fava, que incluye una cuenta Liabilities:AccountsPayable.


Bloques de construcción de Beancount que usarás

Un flujo de trabajo robusto de AP en Beancount se apoya en algunas funciones clave:

  1. Cuentas: Usarás principalmente tu cuenta Liabilities:AccountsPayable, una cuenta de efectivo como Assets:Bank:Checking, y tus diversas cuentas de gasto (p. ej., Expenses:Supplies).
  2. Metadatos: Puedes adjuntar pares clave‑valor a cualquier transacción. Para AP usarás metadatos como invoice:, due:, terms: y document:. Fava reconoce la clave document: y creará automáticamente un enlace clicable al archivo adjunto si configuras una carpeta de documentos.
  3. Etiquetas y enlaces: Usa #tags (como #ap) para filtrar fácilmente y ^links (como ^INV-10455) para vincular programáticamente una factura con su pago posterior. Esto crea una pista clara y auditable.
  4. Consultas (BQL): El lenguaje de consultas similar a SQL de Beancount (BQL) te permite ejecutar informes potentes, como listar todas las cuentas por pagar abiertas ordenadas por fecha de vencimiento, directamente desde la línea de comandos con bean-query o en la página “Query” de Fava.

Flujo de trabajo central de AP en Beancount

Gestionar AP en tu libro mayor implica dos o tres pasos clave: registrar la factura, pagarla y, a veces, manejar pagos parciales o descuentos.

1) Registrar la factura del proveedor (crea el pasivo)

Primero, registras el gasto y creas la cuenta por pagar cuando llega la factura.

; Opcionalmente define tu carpeta de documentos en el archivo principal de Beancount:
option "documents" "documents"

2025-08-05 * "Forest Paint Supply" "Paint order INV-10455" ^INV-10455 #ap
invoice: "INV-10455"
due: "2025-09-04"
terms: "2/10, n/30"
document: "invoices/2025-08-05-forest-paint-INV-10455.pdf"
Expenses:Supplies:Paint 500.00 USD
Liabilities:AccountsPayable -500.00 USD

Esta única entrada logra dos cosas críticas:

  1. Reconoce inmediatamente el gasto de $500 en el período correcto (agosto).
  2. Crea un pasivo correspondiente de $500, mostrando que le debes dinero a Forest Paint Supply.

El enlace ^INV-10455 es un identificador único que te permite adjuntar el mismo enlace al pago más tarde, manteniendo la factura y el pago lógicamente conectados.

2) Pagar la factura (elimina el pasivo)

Cuando pagas la factura, creas una transacción que mueve dinero de tu cuenta bancaria para liquidar el pasivo.

a) Pago estándar (sin descuento):

2025-09-01 * "Forest Paint Supply" "Payment INV-10455" ^INV-10455
Liabilities:AccountsPayable 500.00 USD
Assets:Bank:Checking -500.00 USD

Esta entrada reduce tu saldo de AP en $500 y el saldo de tu cuenta corriente en la misma cantidad. El pasivo queda liquidado.

b) Descuento por pronto pago (p. ej., “2/10, n/30”):

Si los términos son “2/10, n/30”, puedes obtener un 2 % de descuento si pagas dentro de 10 días. Para nuestra factura de 500,esoequivalea500, eso equivale a 10 de descuento. Aquí tienes dos formas aceptables de registrarlo—elige una y sé consistente.

; Opción 1: Registrar el descuento como otro ingreso (efecto contra‑gasto)
2025-08-12 * "Forest Paint Supply" "Early payment discount INV-10455" ^INV-10455
Liabilities:AccountsPayable 500.00 USD
Assets:Bank:Checking -490.00 USD
Income:Discounts:Payables -10.00 USD

; Opción 2: Reducir directamente el gasto original
2025-08-12 * "Forest Paint Supply" "Early payment discount INV-10455" ^INV-10455
Liabilities:AccountsPayable 500.00 USD
Assets:Bank:Checking -490.00 USD
Expenses:Supplies:Paint -10.00 USD

En ambos casos, eliminas el pasivo completo de 500,reducestusaldobancarioen500, reduces tu saldo bancario en 490 (lo que realmente pagaste) y contabilizas el beneficio de $10.

3) Manejar pagos parciales

La función de enlaces de Beancount hace que rastrear pagos parciales sea sencillo y limpio.

; Factura de $1,200
2025-08-10 * "Acme Parts" "INV-9001" ^INV-9001
invoice: "INV-9001"
due: "2025-09-09"
Expenses:Parts 1200.00 USD
Liabilities:AccountsPayable -1200.00 USD

; Primer pago de $400
2025-08-20 * "Acme Parts" "Payment INV-9001 (1/3)" ^INV-9001
Liabilities:AccountsPayable 400.00 USD
Assets:Bank:Checking -400.00 USD

; Pago final de $800
2025-09-05 * "Acme Parts" "Payment INV-9001 (final)" ^INV-9001
Liabilities:AccountsPayable 800.00 USD
Assets:Bank:Checking -800.00 USD

Al usar el enlace ^INV-9001 en las tres transacciones, puedes filtrar fácilmente tu diario para ver el historial completo de esta factura específica y sus pagos asociados.


Consultas útiles (BQL)

Puedes ejecutar estas consultas en la pestaña “Query” de Fava o desde la línea de comandos con bean-query.

Consejo: La función any_meta() es extremadamente útil para extraer campos de metadatos como invoice: y document: en los resultados de tus consultas.

AP abierto por proveedor (vista de saldo):

Esta consulta suma el saldo pendiente actual que le debes a cada proveedor.

SELECT payee, COST(SUM(position)) AS amount
WHERE account "^Liabilities:AccountsPayable"
GROUP BY payee
ORDER BY payee;

AP abierto por factura + fecha de vencimiento:

Obtén una lista ordenada de cada factura abierta, ordenada por su fecha de vencimiento, para ayudarte a priorizar pagos.

SELECT payee,
any_meta('invoice') AS invoice,
any_meta('due') AS due,
COST(SUM(position)) AS amount
WHERE account "^Liabilities:AccountsPayable"
GROUP BY payee, invoice, due
ORDER BY due, payee;

Listar facturas con PDFs adjuntos:

Esta consulta encuentra todas tus facturas y muestra la ruta al documento enlazado.

SELECT date, payee, any_meta('invoice') AS invoice, any_meta('document') AS file
WHERE account "^Liabilities:AccountsPayable"
ORDER BY date DESC;

Dónde ver AP en Fava

  • Balance: Navega a Balance SheetLiabilitiesAccountsPayable para ver el saldo total y profundizar en los detalles de cada transacción.
  • Diario: Filtra el diario con account:Liabilities:AccountsPayable o con un enlace específico como ^INV-xxxx para ver el ciclo de vida completo de una factura.
  • Barra lateral de documentos: Si usas el metadato document: y configuras la directiva option "documents", verás una lista de documentos enlazados en la barra lateral.

Envejecimiento de AP, Rotación y Conciencia de Flujo de Caja

  • Calendario de envejecimiento: Este informe agrupa tus facturas abiertas por tiempo de vencimiento (p. ej., 1‑30 días, 31‑60 días, más de 60 días). En Beancount, el enfoque más práctico es ejecutar la consulta “AP abierto por factura + fecha de vencimiento” anterior, exportar los resultados a CSV y agruparlos en una hoja de cálculo o con un pequeño script Python.
  • Ratio de rotación de AP: Es una medida rápida de cuán rápido pagas a tus proveedores. La fórmula es Compras totales a proveedores ÷ Promedio de AP. Una métrica relacionada, Días de Cuentas por Pagar (DPO), se calcula aproximadamente como 365 ÷ Ratio de rotación.
  • Si no puedes pagar a tiempo: AP está pensado para deudas a corto plazo. Si un proveedor acepta un plazo de pago más largo y formal, deberías reclasificar la deuda fuera de AP y moverla a una nota por pagar.
2025-10-01 * "Helix Industries" "Convert overdue AP to 12-month note" ^INV-1110
Liabilities:AccountsPayable 2000.00 USD
Liabilities:NotesPayable -2000.00 USD

Mejores prácticas para AP en un libro mayor de texto plano

  • Sin papel: Guarda los PDFs de facturas en tu carpeta documents y enlázalos con la clave de metadato document:.
  • Usa enlaces de forma consistente: Pon el número de factura único en un ^link tanto en la factura como en todas las entradas de pago asociadas.
  • Mantén los metadatos ordenados: Usar consistentemente invoice:, due: y terms: mejora la búsqueda, las consultas y las revisiones financieras.
  • Acumulación total: Si deseas informes útiles de AP, comprométete a llevar tus libros bajo una base de acumulación. Beancount y Fava manejan esto de forma excelente.

Copia‑pega de inicio: Factura de proveedor + Pago

; ---- Factura ----
2025-08-05 * "Forest Paint Supply" "Paint order INV-10455" ^INV-10455 #ap
invoice: "INV-10455"
due: "2025-09-04"
document: "invoices/2025-08-05-forest-paint-INV-10455.pdf"
Expenses:Supplies:Paint 500.00 USD
Liabilities:AccountsPayable -500.00 USD

; ---- Pago (sin descuento) ----
2025-09-01 * "Forest Paint Supply" "Payment INV-10455" ^INV-10455
Liabilities:AccountsPayable 500.00 USD
Assets:Bank:Checking -500.00 USD

Esta guía es con fines educativos y no constituye asesoramiento fiscal, legal o financiero.

Referencias y lecturas adicionales:

Externalización de la Contabilidad: Cómo Delegar sus Tareas Financieras (para Usuarios de Beancount)

· Lectura de 13 minutos
Mike Thrift
Mike Thrift
Marketing Manager

Si su libro contable vive en texto plano, ya valora la claridad, el control y la reproducibilidad. Externalizar su contabilidad no tiene que comprometer nada de eso. Al contrario, cuando se hace bien, transforma su configuración de Beancount en un flujo de trabajo fiable y documentado ejecutado por especialistas, mientras usted conserva la plena propiedad de los datos, el repositorio y las reglas.

Esta es una guía práctica para usuarios de Beancount sobre qué externalizar, qué mantener internamente, cómo estructurar los entregables y cómo evaluar a los proveedores. Se trata de delegar el trabajo mecánico sin perder el control.

2025-08-19-accounting-outsourcing-how-to-hand-off-your-financial-tasks


A Quién Va Dirigido

Esta guía es para usted si encaja en uno de estos perfiles:

  • Fundadores en solitario, indie hackers y consultores que usan Beancount y quieren recuperar el tiempo dedicado a las partes mecánicas de la contabilidad para enfocarse en construir su producto o atender a sus clientes.
  • Ingenieros con conocimientos financieros que exigen controles estrictos, historial versionado y auditoría completa, pero no quieren pasar sus fines de semana importando extractos bancarios y conciliando cuentas por sí mismos.
  • Organizaciones que migran de un proveedor todo‑en‑uno y que ahora priorizan la custodia de datos y la reproducibilidad. Los cierres abruptos recientes de plataformas contables como Bench han subrayado una lección crítica: los planes de salida y los formatos abiertos no son opcionales. (TechCrunch, KSV Advisory Report)

Beancount, Brevemente

Para los no iniciados, el ecosistema de Beancount se construye sobre unos pocos componentes centrales que lo hacen poderoso para este tipo de flujo de trabajo:

  • Beancount: En su corazón, es un lenguaje de contabilidad de partida doble especificado en texto plano. Usted escribe archivos de libro legibles por humanos, los confirma en un repositorio Git y usa un compilador para validarlos y generar informes financieros. (GitHub)
  • Fava: Es la elegante interfaz web para Beancount. Fava lee su archivo de libro y le brinda balances, estados de resultados, tendencias, filtros y un potente lenguaje de consultas tipo SQL para inspeccionar sus datos. (Fava Demo)
  • beangulp: El marco moderno para automatizar la ingestión de datos. Evolucionado a partir del importador original de Beancount, beangulp proporciona las herramientas para escribir importadores robustos que puedan parsear CSV, OFX, QFX e incluso extractos PDF, convirtiendo datos bancarios crudos en entradas estructuradas de Beancount. (GitHub)

Una relación de externalización exitosa debe preservar y potenciar estas fortalezas: control de versiones, historial legible por humanos, validación estricta y composibilidad de sus herramientas.


Qué Externalizar vs. Qué Mantener Interno

La clave para una delegación eficaz es una división clara del trabajo. Así se traza la línea entre ejecución táctica y propiedad estratégica.

Grandes Candidatos para Externalizar

Estas tareas son típicamente repetitivas, basadas en reglas y consumen tiempo: perfectas para un especialista.

  • Recopilación e Importación de Extractos: Descargar los extractos mensuales, normalizar varios formatos de archivo (CSV, OFX, PDF) y ejecutar sus importadores beangulp. Esto incluye mantener las reglas de importación a medida que las instituciones financieras cambian sus formatos.
  • Asistencia en la Categorización: Construir heurísticas y reglas declarativas para categorizar transacciones. Opcionalmente pueden usar herramientas como smart_importer para predecir asientos basados en datos históricos, pero la revisión final siempre queda en manos humanas.
  • Conciliación y Verificaciones de Integridad: El trabajo meticuloso de publicar aserciones balance que coincidan con sus extractos, investigar discrepancias y asegurar que el libro quede libre de errores.
  • Adjuntos e Higiene Documental: Obtener facturas y recibos, enlazarlos a transacciones con metadatos y archivar los documentos fuente en un árbol de directorios ordenado y reproducible.
  • Cierre de Mes y Reportes: Preparar la suite estándar de informes (P&L, Balance, Estado de Flujos de Efectivo) y proporcionar vistas o exportaciones de Fava para sus actualizaciones de gestión.
  • Operaciones de CxC/CxP y Preparación de Nómina: Preparar facturas para pago, generar facturas, gestionar cobros y preparar archivos de nómina para su revisión y aprobación final.
  • Preparación del Paquete Fiscal: Al final del año, producir un balance de prueba limpio, schedules de soporte y todos los archivos necesarios para su CPA o asesor fiscal.

Mantener Interno (Usted Posee la Intención y el Riesgo)

Estas responsabilidades son estratégicas y definen la columna vertebral financiera de su negocio. Le corresponden a usted.

  • Diseño del Plan de Cuentas: La estructura y convenciones de nombres de sus cuentas reflejan cómo piensa su negocio. Este es su mapa financiero.
  • Políticas Contables Básicas: Decisiones sobre la estructura de la entidad, reconocimiento de ingresos y políticas de capitalización tienen implicaciones financieras y legales a largo plazo.
  • Aprobaciones Finales: Usted debe retener la última palabra sobre todos los movimientos de efectivo, incluidos pagos, ejecuciones de nómina y asientos contables significativos.
  • Finanzas Estratégicas: Pronósticos, presupuestos y la definición de lo que significa “bueno” para su negocio son responsabilidades fundamentales del propietario.

El Flujo de Trabajo Nativo de Beancount para Externalización

Así es como se ve una colaboración estructurada basada en Git en la práctica.

1) Estructura del Repositorio (Ejemplo)

Su repositorio es la única fuente de verdad. Una estructura bien organizada hace el proceso transparente y mantenible.

/ledger
main.beancount # Archivo principal del libro, incluye otros
accounts/ # Definición del Plan de Cuentas
includes/ # Archivos de transacciones mensuales o anuales
prices/ # Directivas de precios para commodities/acciones
metadata/ # Declaraciones de metadatos personalizados
plugins/ # Plugins personalizados de Beancount
documents/ # Extractos bancarios, recibos, facturas
/importers # Importadores + reglas de beangulp
config.yaml
bank_x.py
card_y.py
/scripts
import.sh # Script de orquestación para importadores
close_month.py # Script de validación y reporte de cierre mensual
/reports
monthly/
year_end/
/ops
runbook.md # Cómo ejecutar el sistema
checklist.md # Listas de verificación procedimentales (p. ej., cierre mensual)
controls.md # Documentación de controles financieros

2) El Ciclo Semanal

El trabajo rutinario debe seguir un ritmo predecible, culminando en un entregable claro para su revisión.

  1. Ingesta: Su proveedor extrae los extractos y ejecuta los importadores beangulp para preparar nuevas transacciones.
  2. Categorización: Aplican reglas de categorización y, si se usa, sugerencias de smart_importer. Luego sigue una revisión humana para corregir ambigüedades.
  3. Conciliación: Añaden aserciones balance que coinciden con los totales de los extractos e investigan cualquier diferencia. El uso de directivas pad debe ser raro y siempre requerir una explicación clara.
  4. Documentación: Los documentos relevantes (recibos, facturas) se adjuntan a las transacciones.
  5. Commit y Propuesta: Los cambios se confirman con mensajes descriptivos y se abre un pull request para su revisión, permitiéndole ver el diff exacto de lo que cambió en sus libros.

3) Cierre de Mes (Mínimo Viable)

Cerrar los libros es un punto de control crítico para asegurar la exactitud y producir informes fiables.

  • Actualizar directivas price para cualquier moneda extranjera o valores basados en mercado.
  • Revisar ítems pendientes: cuentas por cobrar, cuentas por pagar, acumulaciones, gastos prepagados y préstamos.
  • Validar que todas las aserciones balance pasen y que no haya otras verificaciones fallidas.
  • Etiquetar el commit con el período de cierre (p. ej., 2025-08-close) y exportar los informes estándar.
  • Publicar una instantánea de Fava o proporcionar una URL segura para el período.

4) Paquete de Fin de Año

La culminación del trabajo del año es un paquete ordenado y auditable para su preparador de impuestos. Incluye un balance de prueba final, schedules de soporte para cuentas clave (como activos fijos o inventario) y un script reproducible que regenere cada artefacto directamente desde el repositorio Git.


Seguridad y Acceso (No Negociables)

Un flujo de trabajo profesional prioriza la seguridad y su propiedad de los datos.

  • Custodia de Datos Primero: Usted posee el repositorio Git privado. Su proveedor debe trabajar desde un fork y enviar pull requests. Nunca debe alojar la única copia de su libro.
  • Acceso Bancario: Proporcione acceso de solo lectura siempre que sea posible. Si debe usar un servicio agregador, cree credenciales aisladas y tenga un proceso claro para revocarlas.
  • Secretos y Encriptación: Use herramientas como GPG o age para cifrar documentos sensibles en reposo. Exija autenticación multifactor en todos los servicios. Operar bajo el principio de menor privilegio.
  • Acceso a Fava: Usted debe auto‑alojar Fava o ejecutarlo localmente (fava ledger.beancount) y compartir acceso para sesiones de revisión mediante un túnel seguro o VPN. Evite exponerlo directamente a internet.
  • Plan de Salida: Exija un “plan de desconexión”. Debe incluir escrow o entrega garantizada de todos los scripts, configuraciones y documentación. Como demuestran eventos recientes, los proveedores pueden desaparecer de la noche a la mañana; sus registros financieros no deben quedar atrapados con ellos.

Qué Constituye un “Buen” Entregable (Cada Mes)

Al final de cada mes, debe recibir dos cosas: un artefacto técnico y un resumen ejecutivo.

1. Un Pull Request Limpio que Contenga:

  • Todas las transacciones importadas y revisadas del período.
  • Un diff de cualquier regla de importador nueva o modificada.
  • Mensajes de commit que resuman suposiciones clave o ajustes manuales.
  • Un estado 100 % verde en todas las aserciones balance, con un registro que muestre que cada cuenta ha sido conciliada.
  • Enlaces en el archivo Beancount a todos los documentos adjuntos, más un reporte de documentos faltantes.
  • Directivas price actualizadas para inversiones o monedas extranjeras.

2. Un Paquete de Gestión que Contenga:

  • Informes estándar: P&L, Balance y Estado de Flujos de Efectivo.
  • Métricas clave como runway de efectivo y variaciones presupuesto vs. real resaltadas.
  • Enlaces directos a vistas pre‑filtradas de Fava para análisis interactivo más profundo.

Tipos de Proveedores (Y Cuándo Encajan)

No todos los proveedores son iguales. Empareje el proveedor con su etapa y complejidad.

  • Contador con Conocimientos de Beancount: Ideal para manejar el flujo central: importación constante, categorización, conciliaciones y preparación de paquetes de reporte mensual.
  • Firma Boutique de Contabilidad: Adecuada si necesita servicios adicionales como gestión de CxC/CxP, coordinación de nómina, consolidación multi‑entidad o apoyo en la preparación fiscal.
  • Controller/CFO Fractional: La elección correcta cuando necesita supervisión estratégica. Ayudan a diseñar políticas contables, construir pronósticos financieros, preparar reportes para la junta y diseñar controles internos.

Los compromisos suelen estructurarse con una retención mensual para trabajo rutinario y una tarifa horaria para proyectos ad‑hoc.


Preguntas de Entrevista para Externalizar Beancount

Al evaluar un posible proveedor, haga preguntas técnicas específicas para medir su experiencia.

  • ¿Qué importadores beangulp ha creado o mantenido personalmente? ¿Puede mostrarme ejemplos anonimizados?
  • ¿Entregará scripts reproducibles y un runbook, o solo los archivos de salida finales?
  • ¿Cómo garantiza la integridad de los datos en su proceso? (Busque respuestas que involucren aserciones balance, listas de verificación y, quizá, linting CI/CD).
  • ¿Utiliza smart_importer? En caso afirmativo, ¿cuál es su proceso para revisar y sobrescribir sus predicciones?
  • ¿Cómo propone estructurar el flujo de trabajo Git (estrategia de ramas, plantillas de PR, convenciones de mensajes de commit)?
  • ¿Cuál es su plan de salida? ¿Cómo será el proceso de devolución de datos para asegurar que no haya lock‑in?
  • ¿Cómo ejecuta Fava de forma segura para sesiones de revisión con el cliente?

Un Simple Statement of Work (SoW) que Puede Copiar‑Pegar

Utilícelo como punto de partida para su acuerdo de contratación.

Alcance del Trabajo

- Importación semanal de transacciones vía beangulp; incluye preparación de datos y reglas.
- Asistencia en la categorización de transacciones según reglas declarativas.
- Conciliación y verificación de integridad mediante aserciones `balance`.
- Generación y entrega de los informes estándar de cierre mensual (P&L, Balance, Flujos de Efectivo).
- Preparación de facturas y gestión de cobros/pagos (CxC/CxP).
- Preparación del paquete fiscal anual, incluyendo balance de prueba limpio y schedules de soporte.
- Documentación y adjunto de todos los documentos relevantes en el árbol `documents/`.
- Entrega de scripts reproducibles y runbook completo para auditorías internas.

Entregables

- Pull requests semanales con todas las transacciones importadas y revisadas.
- Informes mensuales en formato PDF/CSV generados por Fava.
- Scripts reproducibles y documentación completa del proceso.
- Reporte de documentos faltantes y plan de acción para su recuperación.

Criterios de Evaluación

- Cumplimiento del 100 % de aserciones `balance` en cada cierre mensual.
- Tiempo de respuesta máximo de 48 horas para incidencias críticas.
- Calidad y claridad de la documentación entregada.
- Satisfacción del cliente medida mediante encuesta post‑entrega.

Plazo

- Inicio: [Fecha de inicio]
- Duración: 12 meses, con revisión trimestral de desempeño.

Precio

- Retención mensual de $[monto] + tarifa horaria de $[monto] para trabajos ad‑hoc.

Aceptación

_____________________________ _____________________________
Nombre del Cliente Nombre del Proveedor
Fecha: ________________________ Fecha: ________________________

Configuración del Repositorio

A continuación se muestra una configuración típica de repositorio para una empresa que externaliza su contabilidad con Beancount.

beancount/
├─ ledger/
│ ├─ main.beancount
│ ├─ accounts/
│ ├─ includes/
│ ├─ prices/
│ ├─ metadata/
│ ├─ plugins/
│ └─ documents/
├─ importers/
│ ├─ config.yaml
│ ├─ bank_x.py
│ └─ card_y.py
├─ scripts/
│ ├─ import.sh
│ └─ close_month.py
├─ reports/
│ ├─ monthly/
│ └─ year_end/
└─ ops/
├─ runbook.md
├─ checklist.md
└─ controls.md

Buenas Prácticas para Externalizar con Beancount

  1. Mantenga la estructura de carpetas clara y reproducible.
    Use accounts/ para el plan de cuentas, documents/ para todos los archivos fuente y importers/ para los scripts de ingestión.

  2. Versione siempre los cambios.
    Cada importación, regla nueva o ajuste debe estar asociado a un commit con mensaje descriptivo.

  3. Automatice la validación con CI.
    Configure pipelines que ejecuten beancount -f y verifiquen que todas las aserciones balance pasen antes de aceptar un PR.

  4. Documente las reglas de negocio.
    Guarde en metadata/ y plugins/ cualquier lógica específica de su empresa para que sea visible y auditada.

  5. Revise los pull requests con un checklist.

    • ¿Todas las transacciones están categorizadas?
    • ¿Hay documentos adjuntos faltantes?
    • ¿Todas las aserciones balance están verdes?
    • ¿Se actualizaron los precios de activos relevantes?
  6. Planifique el cierre de mes con antelación.
    Ejecute scripts/close_month.py al menos dos días antes del cierre oficial para detectar problemas con tiempo suficiente para resolverlos.

  7. Mantenga una copia de seguridad del repositorio.
    Use snapshots automáticos o replicación a otro servidor Git para evitar pérdida de datos.


Ejemplo de Configuración de beangulp

# config.yaml
importers:
- name: bank_x
path: importers/bank_x.py
schedule: "0 2 * * 1" # Cada lunes a las 02:00 UTC
- name: card_y
path: importers/card_y.py
schedule: "0 3 * * 2" # Cada martes a las 03:00 UTC
rules:
- pattern: "Bank X"
importer: "bank_x"
- pattern: "Card Y"
importer: "card_y"

Conclusión

Externalizar la contabilidad con Beancount le permite concentrarse en la visión estratégica de su negocio mientras delega las tareas mecánicas a expertos. Al mantener una arquitectura basada en Git, una validación estricta mediante aserciones balance y una documentación clara con Fava, garantiza que la propiedad y la reproducibilidad de sus datos permanezcan intactas. Siga las mejores prácticas de seguridad, establezca planes de salida claros y use los criterios de entregables descritos para asegurar que cada mes reciba información fiable y útil para la toma de decisiones. Con la combinación adecuada de proveedores internos y externos, su empresa podrá escalar su gestión financiera sin perder el control que brinda Beancount.

Soluciones Contables: Las 7 Mejores Formas de Gestionar tu Contabilidad

· Lectura de 9 minutos
Mike Thrift
Mike Thrift
Marketing Manager

Ya sea que estés manejando un negocio paralelo desde tu portátil o escalando una startup de rápido crecimiento, tienes varias rutas confiables para mantener libros limpios y precisos. ¿Pero cuál es la adecuada para ti? La mejor solución depende de tu presupuesto, tu comodidad técnica y cuánto control deseas sobre tus datos financieros.

Aquí tienes una guía clara de las siete opciones contables más comunes: en qué son buenas, dónde fallan y cuándo una solución moderna como Beancount.io encaja perfectamente.

2025-08-16-accounting-solutions-the-top-7-ways-to-get-your-accounting-done


1) Excel

Este suele ser el primer paso en el viaje contable por su absoluta simplicidad y disponibilidad universal.

  • Ideal para: Constructores y fundadores DIY que aman el control total y ya conocen bien las hojas de cálculo.
  • Ventajas: La barrera de entrada es prácticamente nula, y miles de plantillas gratuitas están disponibles en línea. Su flexibilidad permite crear modelos financieros personalizados y seguir flujos de trabajo únicos que el software empaquetado no puede manejar.
  • Desventajas: El mayor inconveniente es la enorme carga de trabajo manual. Cada transacción debe ingresarse y conciliarse a mano, lo que consume mucho tiempo. Peor aún, es peligrosamente fácil introducir errores silenciosos de fórmula o tipográficos sin barreras que los detecten. La colaboración y el mantenimiento de una pista de auditoría clara son torpes sin una disciplina rigurosa.
  • Mejor si… buscas un inicio rápido y sin adornos para un negocio muy simple y eres excepcionalmente meticuloso.

2) Google Sheets

El primo nativo de la nube de Excel, Google Sheets ofrece la misma funcionalidad básica con un giro colaborativo.

  • Ideal para: Equipos que necesitan hojas de cálculo simples y compartidas para registrar ingresos y gastos.
  • Ventajas: Copias de seguridad automáticas en la nube y compartir con un clic son sus principales ventajas. Puedes trabajar desde cualquier dispositivo con navegador, lo que lo hace accesible para equipos en movimiento.
  • Desventajas: Sufre de los mismos defectos fundamentales que Excel: carga manual pesada y alto riesgo de error humano. También puedes encontrar problemas de compatibilidad con ciertas plantillas y complementos diseñados para el ecosistema Microsoft.
  • Mejor si… tu equipo ya usa Google Workspace y aceptas los compromisos de un sistema manual.

3) QuickBooks Online

Durante décadas, QuickBooks ha sido la opción predeterminada para pequeñas empresas que buscan software contable dedicado.

  • Ideal para: Pequeñas empresas que quieren una experiencia “clásica” de software SMB con un amplio ecosistema de integraciones.
  • Ventajas: Su característica distintiva son los bank feeds, que extraen automáticamente transacciones de tus cuentas bancarias y de tarjetas de crédito, reduciendo drásticamente la entrada manual de datos. Ofrece una amplia gama de informes financieros listos para usar y cuenta con una enorme comunidad de contadores y desarrolladores de apps.
  • Desventajas: Aunque las transacciones se importan automáticamente, el sistema sigue requiriendo tu atención semanal para categorizar gastos y conciliar cuentas correctamente. La interfaz puede tener una curva de aprendizaje pronunciada, y el costo puede crecer con funciones adicionales. Lo más importante, crea vendor lock‑in, dificultando la exportación de tu historial financiero si decides cambiar.
  • Notas y fuentes: Como señala QuickBooks, los bank feeds automatizados son una característica central, pero seguirás siendo responsable de la revisión y categorización necesarias para mantener tus libros precisos.

4) Xero

Una alternativa moderna y popular a QuickBooks, Xero ofrece capacidades similares con énfasis en diseño limpio y experiencia de usuario.

  • Ideal para: Propietarios que prefieren una UI más moderna pero necesitan las mismas capacidades básicas que QuickBooks Online.
  • Ventajas: Xero también cuenta con robustos bank feeds y potentes herramientas de conciliación que hacen que emparejar transacciones sea sencillo. Su diseño limpio es frecuentemente elogiado, y muchos contadores dominan la plataforma.
  • Desventajas: Los planes de menor precio pueden presentar brechas de funcionalidad (como límites en facturas o cuentas por pagar) que te empujan a planes más caros, y los complementos aumentan el costo total. Al igual que QBO, la realidad es que “tú sigues haciendo el trabajo” al final para categorizar y revisar.
  • Notas y fuentes: Según Xero, sus bank feeds automatizados se conectan a miles de instituciones financieras en todo el mundo para impulsar sus flujos de conciliación.

5) Contadores (CPAs)

Los Contadores Públicos Certificados son expertos financieros altamente capacitados que brindan asesoría estratégica, planificación fiscal y servicios de cumplimiento.

  • Ideal para: Estrategia fiscal, situaciones financieras complejas, auditorías y asesoría puntual.
  • Ventajas: Un buen CPA ofrece orientación experta en decisiones críticas como estructura societaria, optimización fiscal y tratamientos contables complejos. Su supervisión reduce significativamente tu riesgo en asuntos financieros de alto impacto.
  • Desventajas: Contratar una firma de CPA para la teneduría diaria de libros es prohibitivo para la mayoría de las pequeñas empresas. Para ser efectivos, aún necesitan que les proporciones registros financieros organizados y a tiempo.
  • ¿Cuál es la diferencia con los tenedores de libros? En resumen, los tenedores de libros registran y organizan transacciones históricas, mientras que los contadores y CPAs interpretan, reportan y asesoran basándose en esos datos. (Investopedia, Intuit)

6) Tenedores de Libros Tradicionales

Un tenedor de libros es un profesional responsable de la tarea semanal o mensual de registrar y conciliar tus transacciones financieras.

  • Ideal para: Propietarios que desean una persona dedicada que maneje la rutina semanal de teneduría.
  • Ventajas: La supervisión humana reduce considerablemente errores comunes de categorización que el software solo puede pasar por alto. Al final de cada mes, entregan un conjunto limpio de estados financieros para que los revises.
  • Desventajas: Esta opción es más costosa que el software DIY, con honorarios mensuales que a menudo empiezan en cientos de dólares. El tiempo de entrega de informes y respuestas depende de la disponibilidad y proceso del tenedor de libros.
  • Chequeo de realidad: Para muchas pequeñas empresas, la combinación de un excelente tenedor de libros para tareas semanales y apoyo periódico de un CPA para impuestos y estrategia es una combinación duradera y eficaz. (Pioneer Accounting Group)

7) Beancount.io (Contabilidad en Texto Plano, Supercargada)

Este enfoque moderno combina el control de las hojas de cálculo con la automatización del software y la precisión de la contabilidad de partida doble.

  • Ideal para: Desarrolladores, profesionales de finanzas y fundadores orientados al detalle que exigen precisión, transparencia y automatización sin cajas negras.
  • Qué es: Beancount.io es una plataforma basada en la metodología de código abierto Beancount. Todo tu libro mayor financiero vive como texto plano legible por humanos, que la plataforma transforma en análisis en tiempo real, paneles Fava alojados y flujos de trabajo asistidos por IA.
  • Por qué los equipos lo eligen:
    • Scriptable y Auditable: Versiona tus libros con Git. Cada cambio es revisable en un diff, como el código.
    • UI de Fava alojada: Genera al instante estados de resultados, balances y gráficos interactivos directamente desde tu libro mayor basado en texto. Sin construcción manual de informes.
    • Asistencia de IA: Acelera la categorización de transacciones y detección de anomalías manteniendo a los humanos en el bucle para la aprobación final.
    • Portabilidad Real: Tus datos centrales son un simple archivo de texto. Puedes exportarlo en cualquier momento. No hay vendor lock‑in.
  • Compensaciones: Existe una curva de aprendizaje si nunca has usado contabilidad de partida doble en formato de texto plano. Está pensado para quienes valoran la precisión absoluta y el control sobre la ilusión de conveniencia “presionar un botón”.

¿Prefieres código abierto puro y auto‑hosting?

Siempre puedes ejecutar el motor de código abierto Beancount en tu propia máquina y usar Fava como UI web. Es increíblemente potente y gratuito, pero serás responsable de gestionar la configuración, copias de seguridad e integraciones de datos. Beancount.io se encarga de todo eso por ti.


Comparación Rápida (De un Vistazo)

SoluciónInversión de TiempoNivel de AutomatizaciónAyuda HumanaControl de Datos
ExcelAltoBajoNingunaMedio
Google SheetsAltoBajoNingunaMedio
QuickBooks OnlineMedioMedio‑AltoOpcionalBajo
XeroMedioMedio‑AltoOpcionalBajo
Contadores (CPAs)BajoN/DAlto (Asesoría)Medio
Tenedores de Libros TradicionalesBajoN/DAlto (Semanal)Medio
Beancount.ioBajo‑MedioAltoOpcionalAlto

Cómo Elegir

  • ¿Quieres máximo control, auditabilidad y flujos de trabajo al nivel de un desarrollador? Elige Beancount.io. Obtienes paneles Fava alojados, asistencia de IA y la libertad del texto plano.
  • ¿Quieres que alguien simplemente lo haga? Contrata a un tenedor de libros y mantén a un CPA de guardia para impuestos y preguntas estratégicas.
  • ¿Te sientes cómodo en ecosistemas tradicionales de software SMB? QuickBooks o Xero son opciones válidas—solo asegúrate de reservar tiempo cada semana para revisar y conciliar tus transacciones.
  • ¿Solo estás probando con un presupuesto ajustado? Las hojas de cálculo pueden servir por un tiempo corto. Úsalas como escalón hacia un sistema real, no como destino final.

Por Qué la Contabilidad en Texto Plano Está Ganando Tracción

Las herramientas de contabilidad en texto plano (PTA) como Beancount están creciendo porque enfatizan la reproducibilidad, control de versiones y transparencia. Son valores que resuenan profundamente con ingenieros, científicos de datos y profesionales de finanzas. Si crees que los libros de tu empresa deben ser tan claros y revisables como tu código, estás en el lugar correcto. (plaintextaccounting.org)

¿Listo para ver tu libro mayor cobrar vida?

Crea un espacio de trabajo gratuito en Beancount.io, importa una pequeña muestra de las transacciones del mes pasado y abre el panel Fava alojado. Verás tu estado de resultados y balance aparecer al instante—luego podrás refinar tus categorías con la ayuda de IA.

La guía completa del estado de flujo de efectivo: plantilla gratuita y mejores prácticas

· Lectura de 10 minutos
Mike Thrift
Mike Thrift
Marketing Manager

Comprender de dónde viene su dinero y a dónde va es fundamental para dirigir un negocio exitoso. Si bien muchos propietarios de negocios se centran en sus estados de pérdidas y ganancias, el estado de flujo de efectivo a menudo revela la verdadera historia de la salud financiera de su empresa. Después de todo, puede ser rentable en el papel, pero aún quedarse sin efectivo para pagar sus facturas.

¿Qué es un estado de flujo de efectivo?

2025-08-14-guide-to-cash-flow-statements

Un estado de flujo de efectivo (también llamado estado de flujos de efectivo) es un documento financiero que rastrea todo el dinero que entra y sale de su negocio durante un período específico, ya sea un mes, un trimestre o un año. A diferencia de un estado de resultados que muestra los ingresos cuando se obtienen (incluso si el pago no ha llegado), un estado de flujo de efectivo se centra exclusivamente en los movimientos de efectivo reales.

Piense en ello como el pulso financiero de su negocio. Muestra si tiene suficiente efectivo para cubrir la nómina, pagar a los proveedores, invertir en crecimiento y mantener las luces encendidas.

Por qué su empresa necesita un estado de flujo de efectivo

Los problemas de flujo de efectivo son una de las principales causas del fracaso de las pequeñas empresas. Incluso las empresas rentables pueden fracasar si no tienen suficiente efectivo disponible para cumplir con sus obligaciones inmediatas. He aquí por qué es importante realizar un seguimiento del flujo de efectivo:

Revela la verdadera liquidez: su estado de resultados podría mostrar una ganancia, pero si los clientes aún no han pagado sus facturas, es posible que no tenga efectivo real disponible.

Permite una mejor planificación: al rastrear los patrones de efectivo, puede anticipar la escasez antes de que se convierta en crisis y planificar los principales gastos o inversiones.

Atrae a inversores y prestamistas: las partes interesadas quieren ver que su negocio genera un flujo de efectivo positivo y gestiona sus recursos de manera responsable.

Identifica áreas problemáticas: puede descubrir que demasiado efectivo está inmovilizado en el inventario o que los períodos de cobro son demasiado largos.

Apoya las decisiones de crecimiento: ¿Debería contratar a ese nuevo empleado? ¿Arrendar nuevo equipo? Su estado de flujo de efectivo ayuda a responder estas preguntas.

Las tres secciones de un estado de flujo de efectivo

Cada estado de flujo de efectivo está organizado en tres categorías principales, cada una de las cuales cuenta una historia diferente sobre su negocio:

1. Actividades operativas

Esta sección cubre sus operaciones comerciales diarias, las actividades que generan sus ingresos primarios. Las actividades operativas incluyen:

  • Efectivo recibido de clientes por productos o servicios
  • Efectivo pagado a proveedores y vendedores
  • Nómina y beneficios para empleados
  • Alquiler, servicios públicos y otros gastos operativos
  • Pagos de intereses
  • Pagos de impuestos sobre la renta

El flujo de efectivo neto de las operaciones es posiblemente la línea más importante de su estado. Muestra si sus actividades comerciales principales están generando un flujo de efectivo positivo. Si este número es constantemente negativo, es una señal de alerta de que su modelo de negocio puede necesitar un ajuste.

2. Actividades de inversión

Esta sección rastrea los flujos de efectivo relacionados con los activos e inversiones a largo plazo:

  • Compra o venta de propiedades, planta y equipo
  • Adquisición o enajenación de otros negocios
  • Compra o venta de valores de inversión
  • Préstamos concedidos a otras entidades (y reembolsos recibidos)

Para las empresas en crecimiento, esta sección a menudo muestra un flujo de efectivo negativo porque están invirtiendo en su futuro. Eso no es necesariamente malo, muestra que está construyendo para el mañana. Sin embargo, necesita un flujo de efectivo positivo de las operaciones o actividades de financiación para respaldar estas inversiones.

3. Actividades de financiación

Esta sección muestra cómo su empresa recauda capital y lo devuelve:

  • Ingresos de préstamos o emisión de bonos
  • Reembolso del principal de la deuda
  • Dinero invertido por propietarios o accionistas
  • Recompra de acciones
  • Pagos de dividendos

Esta sección revela cómo está financiando su negocio y si depende en gran medida de la financiación externa o si genera suficiente efectivo internamente.

Cómo crear un estado de flujo de efectivo

Existen dos métodos para preparar un estado de flujo de efectivo: el método directo y el método indirecto. La mayoría de las pequeñas empresas encuentran que el método indirecto es más fácil de implementar.

El método indirecto (recomendado para pequeñas empresas)

Paso 1: Comience con la utilidad neta Comience con la utilidad neta de su estado de resultados para el período.

Paso 2: Ajuste por partidas no monetarias Agregue los gastos que no involucraron pagos en efectivo:

  • Depreciación y amortización
  • Pérdidas en ventas de activos (o reste ganancias)

Paso 3: Ajuste por cambios en el capital de trabajo

  • Agregue disminuciones (o reste aumentos) en cuentas por cobrar
  • Reste los aumentos (o agregue disminuciones) en el inventario
  • Agregue aumentos (o reste disminuciones) en cuentas por pagar

Por ejemplo, si las cuentas por cobrar aumentaron en $ 2,000, reste esto de la utilidad neta porque registró los ingresos pero aún no ha cobrado el efectivo.

Paso 4: Agregue actividades de inversión Enumere todos los flujos de efectivo de la compra o venta de activos e inversiones a largo plazo.

Paso 5: Agregue actividades de financiación Registre todos los flujos de efectivo de transacciones de deuda, capital y dividendos.

Paso 6: Calcule el cambio neto en efectivo Sume el efectivo neto de las tres secciones. Esto debe ser igual al cambio en su saldo de efectivo entre el comienzo y el final del período.

El método directo

El método directo es conceptualmente más sencillo, pero requiere un mantenimiento de registros más detallado. Simplemente enumere todos los cobros y pagos en efectivo:

Cobros en efectivo:

  • Cobros de clientes
  • Intereses recibidos
  • Otros cobros operativos en efectivo

Pagos en efectivo:

  • Pagos a proveedores
  • Pagos a empleados
  • Intereses pagados
  • Impuestos sobre la renta pagados
  • Otros pagos operativos en efectivo

Reste los pagos totales de los cobros totales para obtener el efectivo neto de las actividades operativas, luego agregue las secciones de inversión y financiación como se describe anteriormente.

Ejemplo del mundo real: una pequeña panadería

Digamos que usted es dueño de una panadería de barrio. Así es como podría verse un simple estado de flujo de efectivo mensual:

Actividades operativas:

  • Utilidad neta: $ 4,000
  • Agregar: Depreciación: $ 500
  • Aumento en cuentas por cobrar: -$ 1,000 (los clientes compraron a crédito)
  • Disminución en el inventario: $ 800 (suministros agotados)
  • Aumento en cuentas por pagar: $ 600 (retrasó algunos pagos a proveedores)
  • Efectivo neto de operaciones: $ 4,900

Actividades de inversión:

  • Compra de horno nuevo: -$ 3,000
  • Efectivo neto de inversión: -$ 3,000

Actividades de financiación:

  • Pago del principal del préstamo de la panadería: -$ 500
  • Efectivo neto de financiación: -$ 500

Aumento neto de efectivo: $ 1,400

Si comenzara el mes con 5,000enelbanco,terminarıˊacon5,000 en el banco, terminaría con 6,400.

Mejores prácticas para usar su estado de flujo de efectivo

1. Revíselo regularmente

No se limite a crear un estado de flujo de efectivo una vez al año para su contador. Revíselo mensualmente como mínimo, y semanalmente si su negocio tiene márgenes ajustados o un crecimiento rápido. Cuanto más frecuentemente lo revise, más rápido podrá detectar y abordar los problemas.

2. Cree proyecciones de flujo de efectivo

Utilice datos históricos para pronosticar los flujos de efectivo futuros. Esto le ayuda a anticipar las variaciones estacionales, planificar los principales gastos y evitar las crisis de efectivo. La mayoría de las empresas crean pronósticos continuos de 12 meses que actualizan mensualmente.

3. Vigile las métricas clave

Preste especial atención a:

  • Flujo de efectivo operativo: Debe ser constantemente positivo
  • Flujo de efectivo libre: Flujo de efectivo operativo menos gastos de capital
  • Ciclo de conversión de efectivo: Cuánto tiempo se tarda en convertir las inversiones de inventario de nuevo en efectivo

4. Compare períodos

Observe las tendencias mes tras mes y año tras año. ¿Está creciendo su flujo de efectivo operativo? ¿Se está volviendo más o menos dependiente de la financiación? Estas tendencias revelan la trayectoria de su negocio.

5. Concilie con otros estados financieros

Su estado de flujo de efectivo debe contar una historia consistente con su balance general y su estado de resultados. El cambio en efectivo en su estado de flujo de efectivo debe coincidir con el cambio en la cuenta de efectivo en su balance general.

Errores comunes que debe evitar

Confundir ganancia con flujo de efectivo: El hecho de que sea rentable no significa que tenga efectivo. Una venta de $ 10,000 en términos de pago de 60 días ayuda a su estado de resultados hoy, pero no ayuda a su flujo de efectivo durante dos meses.

Ignorar la sección operativa: Algunos dueños de negocios se enfocan solo en la línea de fondo (cambio total en efectivo) sin analizar las fuentes. Desea un flujo de efectivo positivo de las operaciones, no solo por asumir más deuda.

Olvidar las transacciones no monetarias: La depreciación no utiliza efectivo, pero reduce su ingreso neto. Asegúrese de volver a agregarlo cuando use el método indirecto.

No planificar las variaciones estacionales: Muchas empresas tienen patrones de flujo de efectivo estacionales. Planifique los meses de escasez durante los abundantes.

Confundir principal e intereses: Los pagos de intereses son actividades operativas; los pagos del principal de los préstamos son actividades de financiación. Mantenlos separados.

Descargue su plantilla gratuita de estado de flujo de efectivo

Para ayudarle a comenzar a rastrear el flujo de efectivo de su negocio, hemos creado una plantilla de Excel gratuita y fácil de usar que incluye:

  • Secciones preformateadas para actividades operativas, de inversión y de financiación
  • Cálculos automáticos
  • Vistas mensuales y anuales
  • Elementos de línea personalizables para su negocio específico
  • Formato profesional para presentaciones a prestamistas o inversores

La plantilla utiliza el método indirecto, que funciona bien para la mayoría de las pequeñas empresas. Simplemente ingrese sus datos financieros y la plantilla calculará sus flujos de efectivo automáticamente.

Tomar acción: sus próximos pasos

Comprender y monitorear el flujo de efectivo no se trata solo de sobrevivir, se trata de tomar decisiones informadas que impulsen el crecimiento. Aquí le mostramos cómo poner este conocimiento en práctica:

  1. Comience a realizar un seguimiento ahora: No espere hasta el próximo mes o el próximo trimestre. Descargue la plantilla y cree su primer estado de flujo de efectivo esta semana.

  2. Establezca un programa de revisión: Bloquee tiempo en su calendario para revisar el flujo de efectivo al menos mensualmente.

  3. Cree un colchón de efectivo: Apunte a mantener de 3 a 6 meses de gastos operativos en reservas de efectivo.

  4. Refuerce los cobros: Si las cuentas por cobrar están consumiendo efectivo, implemente términos de pago más estrictos o procedimientos de seguimiento.

  5. Gestione el inventario con prudencia: El exceso de inventario inmoviliza el efectivo. Utilice pedidos justo a tiempo siempre que sea posible.

  6. Negocie los términos de pago: ¿Puede extender las cuentas por pagar sin dañar las relaciones con los proveedores? ¿Puede incentivar a los clientes a pagar más rápido?

En conclusión

La gestión del flujo de efectivo no es glamorosa, pero es esencial. Su estado de flujo de efectivo es una de las herramientas más poderosas que tiene para comprender la salud financiera de su negocio y tomar decisiones inteligentes. Al rastrear de dónde viene su dinero y a dónde va, puede evitar las crisis de efectivo, planificar el crecimiento y construir un negocio más resistente.

Recuerde: los ingresos son vanidad, las ganancias son cordura, pero el efectivo es el rey. Comience a rastrear el suyo hoy.


¿Tiene preguntas sobre cómo crear o interpretar su estado de flujo de efectivo? Deje un comentario a continuación y le ayudaremos a encontrar respuestas.

El ciclo contable, estilo Beancount

· Lectura de 9 minutos
Mike Thrift
Mike Thrift
Marketing Manager

Los estados financieros no aparecen por arte de magia. Son el producto final de un proceso estructurado y repetible conocido como ciclo contable. Aunque los principios son universales, las herramientas que uses pueden cambiar drásticamente la experiencia. Esta guía te lleva a través del ciclo contable con un enfoque en Beancount, la poderosa herramienta de contabilidad de texto plano.

Veremos cómo el enfoque basado en texto de Beancount elimina pasos tediosos, qué deberías automatizar y qué informes te dan la visión más clara de tu salud financiera. 🧑‍💻

2025-08-13-the-accounting-cycle-beancount-style


TL;DR: El flujo de trabajo con Beancount

  • Captura y Diario: Registra cada transacción como una publicación limpia de partida doble en tu archivo de texto .beancount.
  • Validar y conciliar: Usa aserciones balance para confirmar que tu libro mayor coincide con los extractos bancarios y ejecuta bean-check para detectar errores.
  • Revisar: Genera un balance de prueba no ajustado para una rápida verificación de sentido.
  • Ajustar: Publica asientos para devengos, diferimientos, depreciación y otros ítems de fin de período.
  • Re‑revisar: Comprueba el balance de prueba ajustado para asegurar que todo esté correcto.
  • Publicar y cerrar: Genera tu Estado de Resultados, Balance General y Estado de Flujos de Efectivo. Cerrar los libros es opcional en Beancount, ya que los informes son conscientes de la fecha.

Este flujo puede visualizarse así:


Paso 1: Capturar y registrar transacciones

Este es el paso fundamental. Cada evento financiero —una venta, una compra, una comisión bancaria— debe ser registrado. En Beancount, haces esto creando transacciones en un archivo de texto sencillo, típicamente llamado main.beancount o organizado en varios archivos por año.

Cada transacción debe seguir las reglas de la contabilidad de partida doble, lo que significa que la suma de todas las publicaciones debe ser cero. Beancount lo hace cumplir por ti.

2025-08-10 * "Walmart" "Compra de suministros de oficina"
Expenses:Office:Supplies 45.67 USD
Assets:Bank:Checking -45.67 USD
  • Consejo profesional: Usa etiquetas como #project-phoenix o #client-acme para añadir dimensiones a tus datos. Esto hace que la consulta y generación de informes sea increíblemente flexible más adelante.

Higiene de conciliación ✅

La característica más poderosa para garantizar la exactitud es la aserción de balance. Al final de un período de estado (por ejemplo, al final del mes), declaras cuál debería ser el saldo de una cuenta.

2025-08-31 balance Assets:Bank:Checking  12345.67 USD

Si la suma de todas las transacciones que afectan a Assets:Bank:Checking hasta esa fecha no equivale a 12345.67 USD, Beancount generará un error. Esta simple directiva convierte tu libro mayor en un documento auto‑auditado.

Para quienes estén retroalimentando datos históricos, la directiva pad puede crear automáticamente una transacción de balance para que tus saldos de apertura coincidan con tu primera aserción.


Paso 2: "Publicar en el libro mayor" (¡Gratis!)

En los sistemas contables tradicionales, primero escribes asientos en un "diario", y luego un paso separado de "publicación" copia esos valores al "libro mayor general".

Con Beancount, tu archivo .beancount es tanto el diario como el libro mayor. Cuando escribes y guardas una transacción, ya la has publicado. No hay un paso separado. Esta inmediatez es una ventaja central de la contabilidad de texto plano: lo que ves es lo que obtienes.


Paso 3: Preparar un balance de prueba no ajustado

Antes de comenzar a hacer ajustes, necesitas una rápida verificación de "¿todo cuadra?". Un balance de prueba es un informe sencillo que lista cada cuenta y su saldo total. El total de los saldos deudores debe ser igual al total de los saldos acreedores.

Puedes generar esto con una consulta simple:

bean-query main.beancount \
"SELECT account, sum(position) GROUP BY 1 ORDER BY 1"

O, para un enfoque más visual, abre tu libro mayor en Fava (la interfaz web de Beancount) y navega al informe "Trial Balance". Busca cualquier anomalía: una cuenta de activo con saldo acreedor, o una cuenta de gasto con un valor extraño.


Paso 4: Registrar asientos de ajuste

Los asientos de ajuste son cruciales para una información precisa bajo el principio de acumulación. Garantizan que los ingresos se reconozcan cuando se ganan y los gastos cuando se incurren, sin importar cuándo se mueve el efectivo.

Ajustes comunes incluyen:

  • Devengos: Registrar ingresos que has ganado pero aún no has facturado, o gastos que has incurrido pero no has pagado.
  • Diferimientos: Manejar pagos anticipados. Si un cliente te paga por un año de servicio por adelantado, lo registras como un pasivo (Liabilities:UnearnedRevenue) y reconoces 1/12 cada mes como ingreso.
  • Elementos no monetarios: Registrar cosas como la depreciación de activos.
  • Correcciones: Arreglar errores o contabilizar ítems omitidos de los feeds bancarios, como un pequeño pago de intereses.

Ejemplo: Devengar ingresos

Terminaste un proyecto el 31 de agosto pero no enviarás la factura hasta septiembre. Para reconocer el ingreso en el período correcto (agosto), haces un asiento de ajuste:

2025-08-31 * "Devengar ingreso para proyecto cliente #1042"
Assets:AccountsReceivable 3000.00 USD
Income:Consulting -3000.00 USD

Ejemplo: Registrar depreciación

Tu empresa tiene un calendario de depreciación para sus activos. Al final del período, registras el gasto:

2025-12-31 * "Depreciación anual de equipos informáticos"
Expenses:Depreciation 4800.00 USD
Assets:Fixed:AccumulatedDepreciation -4800.00 USD

Paso 5: Ejecutar un balance de prueba ajustado y validar

Una vez que tus asientos de ajuste estén registrados, vuelve a ejecutar el informe de balance de prueba. Este es tu Balance de Prueba Ajustado. Proporciona el conjunto final de números que se usarán para crear los estados financieros.

Este también es el momento perfecto para ejecutar la verificación interna de Beancount:

bean-check main.beancount

Este comando verifica toda la sintaxis, reglas de balance y aserciones. Si no muestra salida, tus libros son mecánicamente correctos.


Paso 6: Publicar los estados financieros 📊

Este es el premio. Usando los números de tu balance de prueba ajustado, puedes generar los informes clave. Fava es la forma más sencilla de hacerlo, ya que ofrece informes interactivos y con capacidad de profundización de forma inmediata.

  • Estado de Resultados (Pérdidas y Ganancias): Muestra tus ingresos y gastos durante un período, resultando en tu utilidad neta o pérdida.
  • Balance General: Una instantánea de lo que posees (Activos) y lo que debes (Pasivos), así como tu patrimonio neto (Patrimonio), en una fecha específica.
  • Estado de Flujos de Efectivo: Conciliación de tu efectivo inicial con el final mostrando de dónde provino el dinero y a dónde fue.

Para informes personalizados, puedes usar el Lenguaje de Consulta de Beancount (BQL). Aquí tienes una consulta para un estado de resultados mensual:

-- P&L para agosto 2025
SELECT account, sum(position)
WHERE account '^(Income|Expenses)'
AND date >= 2025-08-01 AND date <= 2025-08-31
GROUP BY account ORDER BY account;

Paso 7: Cierre de libros (opcional)

En la contabilidad tradicional, el proceso de "cierre" implica crear asientos que pongan a cero todas las cuentas temporales (Ingresos y Gastos) y transfieran la utilidad neta a una cuenta de patrimonio llamada Utilidades Retenidas. Esto reinicia formalmente las cuentas temporales para el próximo año.

En Beancount, este paso suele ser innecesario. Los informes de Fava son conscientes de la fecha; si solicitas un P&L de 2025, solo usará datos de 2025. Los saldos no "se derraman". La mayoría de los usuarios simplemente dejan los saldos tal como están.

Sin embargo, si necesitas realizar un cierre formal por cumplimiento o informes a accionistas, puedes hacerlo con una simple transacción de fin de año que mueva los saldos totales de ingresos y gastos a Equity:Retained-Earnings.


Lista de verificación práctica para el cierre mensual

Aquí tienes una lista de verificación repetible para cerrar tus libros cada mes usando Beancount.

  • Captura: Importa todas las transacciones de bancos y tarjetas de crédito. Ingresa manualmente cualquier gasto en efectivo o ítem fuera de banda.
  • Conciliación: Añade aserciones balance para todas las cuentas bancarias, tarjetas de crédito y préstamos, coincidiendo con tus extractos.
  • Revisión: Examina el balance de prueba no ajustado en Fava. Investiga cualquier saldo extraño o inesperado. Verifica facturas pendientes (Assets:AccountsReceivable) o cuentas por pagar (Liabilities:AccountsPayable).
  • Ajuste: Registra asientos para ingresos/gastos devengados, ingresos diferidos y cualquier corrección necesaria.
  • Validación: Ejecuta bean-check. Revisa el balance de prueba ajustado final.
  • Publicación: Genera el P&L y el Balance General. Envíalos a los interesados o guárdalos para tus registros.
  • Cierre: Opcionalmente, realiza un asiento de cierre si tu negocio lo requiere. Archiva una copia de tus archivos .beancount del período.

Por qué Beancount brilla en el ciclo contable

  • Transparencia y auditabilidad: Tu libro mayor es un archivo de texto. Puedes usar git para controlar versiones de tu historia financiera, revisar cambios con diff y colaborar con tu contador en un formato claro y sin ambigüedades.
  • Control total: Tú defines tu plan de cuentas. No estás atado a la estructura de un proveedor de software. Tus datos son tuyos, para siempre, en un formato abierto.
  • Poder inigualable: La combinación de consultas tipo SQL (BQL) y una rica interfaz web (Fava) te brinda un poder sin precedentes para segmentar, analizar y comprender tus datos financieros.

Fragmentos para copiar y pegar y comenzar

Plan de cuentas simple:

option "title" "My Personal Ledger"
option "operating_currency" "USD"

;; --- Accounts ---
1970-01-01 open Assets:Bank:Checking
1970-01-01 open Assets:AccountsReceivable
1970-01-01 open Liabilities:CreditCard
1970-01-01 open Liabilities:UnearnedRevenue
1970-01-01 open Equity:Owner:Capital
1970-01-01 open Equity:Retained-Earnings
1970-01-01 open Income:Consulting
1970-01-01 open Expenses:Office:Supplies
1970-01-01 open Expenses:Software
1970-01-01 open Expenses:Depreciation

Consulta BQL útil:

-- Find all customers with an outstanding balance
SELECT payee, sum(position)
WHERE account = 'Assets:AccountsReceivable'
GROUP BY payee
HAVING sum(position) > 0
ORDER BY sum(position) DESC;

Al mapear el atemporal ciclo contable a las herramientas modernas basadas en texto de Beancount, obtienes un sistema robusto, transparente y construido para perdurar. ¡Feliz contabilidad!

Comprendiendo Cuentas por Cobrar (Una Guía de Beancount)

· Lectura de 9 minutos
Mike Thrift
Mike Thrift
Marketing Manager

Si diriges un negocio que factura a clientes, necesitas una forma sólida de rastrear quién te debe dinero. Aquí es donde entran las Cuentas por Cobrar (AR). No es solo un número en un informe; es la sangre de tu flujo de efectivo.

Esta guía te explicará qué son las Cuentas por Cobrar, por qué son importantes y cómo gestionarlas con precisión y claridad usando el sistema de contabilidad en texto plano, Beancount.

2025-08-12-understanding-accounts-receivable


TL;DR

Cuentas por cobrar (AR) es el dinero que los clientes te deben por bienes o servicios que ya has entregado. Es un activo corriente en tu balance, central en la contabilidad de acumulación, y un motor clave del flujo de efectivo de tu negocio. Puedes rastrear AR de forma limpia en Beancount usando subcuentas de cliente, vinculando facturas a pagos con ^links, y ejecutando unas pocas consultas simples. Para medir tu velocidad de cobro, puedes calcular Rotación de AR y Días de Ventas Pendientes (DSO). Para manejar el riesgo, puedes usar una provisión para cuentas dudosas.


¿Qué es Cuentas por Cobrar?

Definición
Cuentas por Cobrar representa el saldo de dinero que tu empresa tiene derecho por bienes o servicios entregados o utilizados pero que aún no han sido pagados por los clientes. Bajo la contabilidad de acumulación, reconoces este ingreso cuando lo generas, no cuando recibes el efectivo. Como resultado, AR aparece como un activo corriente en el balance de tu compañía.

Por Qué Importa
Gestionar eficazmente tu AR es crítico para mantener una liquidez saludable. Cuanto más rápido cobras tus facturas, más corto será tu ciclo de conversión de efectivo, es decir, el tiempo que tardas en convertir tus inversiones en inventario y otros recursos en efectivo. Al monitorear métricas como Rotación de AR y Días de Ventas Pendientes (DSO), puedes obtener una visión clara de tu eficiencia de cobro y tomar acciones para mejorarla.

Cuentas por Cobrar vs. Cuentas por Pagar (Resumen de una Línea)

  • AR = dinero que te deben (es un activo).
  • AP = dinero que debes a otros (es un pasivo).

El Flujo de Cuentas por Cobrar en la Contabilidad de Doble Entrada

Conceptualmente, el ciclo de vida de una cuenta por cobrar sigue estos pasos:

  1. Emisión de una Factura (Venta a Crédito): Cuando envías una factura, aumentas tus Activos (específicamente, Cuentas por Cobrar) y reconoces el Income que has ganado.
  2. Cobro en Efectivo: Cuando el cliente paga, aumentas un activo (tu cuenta Assets:Bank) y disminuyes otro (Assets:AR). El efecto neto en tus activos totales es cero, pero tu posición de efectivo mejora.
  3. Descuentos o Créditos: Si ofreces un descuento por pronto pago o emites una nota de crédito, reduces el saldo de AR del cliente y lo compensas con un gasto por descuento o una reducción de ingresos (contra‑ingreso).
  4. Deudas Incobrables: Desafortunadamente, no todas las facturas se pagan. Para contabilizar esto, puedes reconocer una provisión para cuentas dudosas (un contra‑activo que reduce el valor de tu AR) y un gasto correspondiente por deudas incobrables. Más tarde, puedes dar de baja una factura específica contra esta provisión.

Modelado de AR en Beancount

Beancount es un sistema de contabilidad de doble entrada en texto plano que se adapta perfectamente al seguimiento de AR. Su uso de tags (que empiezan con #), links (que empiezan con ^) y un lenguaje de consultas tipo SQL (bean-query) hace que todo tu proceso de AR sea transparente, auditable y scriptable.

Estructura de Cuentas Sugerida

Un plan de cuentas limpio es la base. Aquí tienes una estructura recomendada:

Assets:AR
Assets:AR:Clients:<Name>
Assets:AR:Allowance ; Una cuenta contra‑activo

Income:Sales
Income:Contra:SalesDiscounts ; Alternativa a una cuenta de gasto

Expenses:SalesDiscounts
Expenses:BadDebt

1. Registrar una Venta a Crédito (Emitir una Factura)

Cuando envías una factura a un cliente, la registras en tu libro mayor.

2025-07-01 * "Acme Co." "Invoice 2025-045 · Web design" ^INV-2025-045 #ar #client:acme
invoice: "2025-045"
due: "2025-07-31"
document: "/invoices/2025/INV-2025-045.pdf"
Assets:AR:Clients:Acme-Co 1200.00 USD
Income:Sales -1200.00 USD
  • El ^INV-2025-045 link es un identificador único que conectará esta factura con su(s) pago(s) futuro(s).
  • El document: metadata ayuda a Fava (la interfaz web de Beancount) a renderizar un enlace clicable directamente al PDF de la factura.

2. Registrar Pago Completo

Cuando Acme Co. paga la factura en su totalidad, limpias su saldo de cuentas por cobrar.

2025-07-25 * "Acme Co." "Payment for INV-2025-045" ^INV-2025-045 #ar
Assets:Bank:Checking 1200.00 USD
Assets:AR:Clients:Acme-Co -1200.00 USD

Usar el mismo link ^INV-2025-045 crea una pista de auditoría clara que conecta la factura y el pago.

3. Manejo de Pagos Parciales

Si un cliente realiza un pago parcial, el proceso es el mismo. El link mantiene todo conectado.

2025-07-20 * "Acme Co." "Partial payment INV-2025-045" ^INV-2025-045 #ar
Assets:Bank:Checking 400.00 USD
Assets:AR:Clients:Acme-Co -400.00 USD

Una consulta sobre ^INV-2025-045 mostraría la factura original de 1200yestepagode1200 y este pago de 400, dejando un saldo de $800.

4. Manejo de un Descuento por Pago Anticipado

Supongamos que ofreces un 2 % de descuento en una factura de $1000 si se paga pronto.

2025-07-10 * "Acme Co." "2% early-payment discount on INV-2025-046" ^INV-2025-046 #ar
Assets:Bank:Checking 980.00 USD
Expenses:SalesDiscounts 20.00 USD
Assets:AR:Clients:Acme-Co -1000.00 USD

Aquí, liquidamos la cuenta por cobrar completa de 1000,registramoslos1000, registramos los 980 recibidos y anotamos los $20 de descuento como gasto. Nota: muchos libros tratan los descuentos de ventas como contra‑ingreso en lugar de gasto. Usar una cuenta de gasto suele ser más sencillo para libros pequeños. Lo importante es elegir un método y aplicarlo consistentemente.

5. Incluir Impuesto sobre Ventas en Facturas

Si cobras impuesto sobre ventas, lo registras como un pasivo al momento de facturar.

2025-07-01 * "Acme Co." "INV-2025-047 · Hardware + tax" ^INV-2025-047 #ar
invoice: "2025-047"
due: "2025-07-31"
Assets:AR:Clients:Acme-Co 1100.00 USD
Income:Sales -1000.00 USD
Liabilities:Tax:Sales -100.00 USD

Has facturado 1100,reconocido1100, reconocido 1000 de ingresos y ahora debes $100 a la autoridad fiscal.

6. Manejo de Deudas Incobrables (Método de Provisión)

El método de provisión es preferido bajo los Principios de Contabilidad Generalmente Aceptados (GAAP) porque empareja mejor los gastos con los ingresos.

Paso 1: Estimar y Crear la Provisión (por ejemplo, al cierre del año)
Basado en datos históricos, estimas que un porcentaje de tus cuentas por cobrar puede ser incobrable.

2025-12-31 * "Allowance for doubtful accounts (2% of AR)"
Expenses:BadDebt 300.00 USD
Assets:AR:Allowance -300.00 USD

Esto crea una cuenta contra‑activo (Assets:AR:Allowance) que reduce el valor contable total de tus cuentas por cobrar.

Paso 2: Dar de Baja una Factura Específica Incobrable
Cuando estés seguro de que una factura no será pagada, la das de baja contra la provisión.

2026-03-05 * "Write-off INV-2025-049 for Insolvent Client" ^INV-2025-049 #ar
Assets:AR:Allowance 1200.00 USD
Assets:AR:Clients:Insolvent-Client -1200.00 USD

Observa que esta transacción no impacta tus gastos; el gasto ya se reconoció al crear la provisión.


Informes Mínimos y Consultas

Puedes obtener instantáneas rápidas de tu AR usando Fava o bean-query.

Cuentas por Cobrar Abiertas por Cliente

SELECT account, SUM(position)
WHERE account '^Assets:AR'
GROUP BY account
ORDER BY account;

Diario de Actividad de AR para un Período

JOURNAL
WHERE account '^Assets:AR'
AND date >= 2025-07-01 AND date < 2025-08-01;

Métricas Clave de AR (Con Fórmulas Rápidas)

Para estos ratios, un enfoque práctico es usar bean-query para exportar los números necesarios (ventas del período, saldos iniciales/finales de AR) y luego realizar los cálculos en una hoja de cálculo o script. Así mantienes tu libro mayor limpio y tus cálculos explícitos.

Ratio de Rotación de AR

Mide cuántas veces por período tu negocio cobra su promedio de cuentas por cobrar. Cuanto más alto, mejor.

ARTurnover=fracNetCreditSalesAverageARAR\\ Turnover = \\frac{Net\\ Credit\\ Sales}{Average\\ AR}

DSO (Días de Ventas Pendientes)

Indica el número promedio de días que tarda en cobrarse el pago después de una venta. Cuanto más bajo, mejor.

DSO=(fracAccountsReceivableTotalCreditSales)timesNumberofDaysDSO = (\\frac{Accounts\\ Receivable}{Total\\ Credit\\ Sales}) \\times Number\\ of\\ Days

Juntos, estos indicadores muestran cuán eficientemente conviertes facturas en efectivo.


Archivo de Inicio Simple de Beancount (Copiar/Pegar)

; --- Accounts ---------------------------------------------------------------
1970-01-01 open Assets:Bank:Checking USD
1970-01-01 open Assets:AR
1970-01-01 open Assets:AR:Clients:Acme-Co
1970-01-01 open Assets:AR:Allowance
1970-01-01 open Income:Sales
1970-01-01 open Expenses:SalesDiscounts
1970-01-01 open Expenses:BadDebt
1970-01-01 open Liabilities:Tax:Sales USD
; ---------------------------------------------------------------------------

; Example invoice
2025-07-01 * "Acme Co." "Invoice 2025-045 · Web design" ^INV-2025-045 #ar
invoice: "2025-045"
due: "2025-07-31"
document: "/invoices/2025/INV-2025-045.pdf"
Assets:AR:Clients:Acme-Co 1200.00 USD
Income:Sales -1200.00 USD

; Payment received
2025-07-25 * "Acme Co." "Payment INV-2025-045" ^INV-2025-045 #ar
Assets:Bank:Checking 1200.00 USD
Assets:AR:Clients:Acme-Co -1200.00 USD

Consejos Operativos para Mantener un AR Saludable

  • Establece Términos Claros: Incluye la fecha de vencimiento, políticas de cargos por retraso y cualquier descuento por pronto pago en cada factura.
  • Enlaza Todo: Usa enlaces ^INV-... consistentes para conectar facturas, pagos y notas de crédito, creando una pista de auditoría clara.
  • Adjunta Documentos: Usa la metadata document: para enlazar PDFs de facturas, órdenes de compra y contratos.
  • Revisa Mensualmente: Consulta tu reporte de AR abierto al menos una vez al mes y da seguimiento a las facturas vencidas. Observa las tendencias de Rotación de AR y DSO para detectar problemas temprano.

Lecturas Adicionales (Fuentes Utilizadas)