Ir al contenido principal

8 publicaciones etiquetadas con "Fava"

Ver todas las etiquetas

Beancount.io v3.0: Tus Datos Financieros, Bajo Tu Control

· 9 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

La mayoría del software financiero te obliga a confiarles tus datos. Ellos los poseen, los controlan y te encierran. Creemos que mereces algo mejor.

Hoy, lanzamos la próxima generación de Beancount.io, construida sobre un principio simple: tus datos financieros deben pertenecerte a ti, no a nosotros. Con la integración nativa de Git, puedes extraer tu libro mayor contable completo a tu propia máquina, editarlo con cualquier herramienta que desees y volver a enviar los cambios. Sin encierros. Sin formatos propietarios. Solo tus datos, bajo tu control.

Esta versión se centra en tres objetivos centrales que son los que más importan a las personas que gestionan sus finanzas con la contabilidad en texto plano:

  1. Verdadera propiedad de los datos a través de la integración nativa de Git
  2. Colaboración perfecta para equipos, socios y contadores
  3. Una interfaz intuitiva que hace que la contabilidad en texto plano sea accesible para todos

Panel de control general

Potentes informes financieros a tu alcance

El nuevo panel de control incluye herramientas integrales de informes financieros que te ayudan a comprender tu posición financiera de un vistazo:

Estado de resultados

Panel de control del estado de resultados

Realiza un seguimiento de tu beneficio neto, ingresos y gastos en diferentes productos básicos a lo largo del tiempo. La vista del Estado de Resultados proporciona un desglose claro de tus fuentes de ingresos y patrones de gasto, lo que te ayuda a identificar tendencias y tomar decisiones financieras informadas. Visualiza tu rendimiento financiero con gráficos interactivos que muestran cómo evolucionan tus ingresos y gastos mes a mes o año tras año.

Balance general

Panel de control del balance general

Supervisa tu patrimonio neto en diferentes productos básicos a lo largo del tiempo con la vista completa del Balance General. Consulta tus activos, pasivos y patrimonio en cualquier momento, con un seguimiento histórico que muestra cómo cambia tu posición financiera. Esta potente herramienta te ayuda a comprender tu salud financiera general y a realizar un seguimiento del progreso hacia tus objetivos financieros.

Balance de comprobación

Panel de control del balance de comprobación

La vista del Balance de Comprobación proporciona una instantánea completa de todos los saldos de tus cuentas en un momento específico. Perfecta para la conciliación y para garantizar que tus libros estén equilibrados, esta vista muestra los débitos y créditos uno al lado del otro, lo que facilita la verificación de la precisión de tus registros contables.

Vista de detalles de la cuenta

Panel de control de detalles de la cuenta

Profundiza en cualquier cuenta con la vista Detalles de la cuenta. Consulta los valores del saldo de la cuenta y los cambios a lo largo del tiempo con gráficos intuitivos. La vista incluye un diario de cuenta completo que muestra todas las transacciones que afectan a la cuenta, incluidas las subcuentas, lo que te brinda una visibilidad completa de cómo fluye el dinero a través de tu sistema financiero.

Editor de archivos moderno

Panel de control del editor de archivos

El nuevo panel de control presenta un editor de archivos completamente rediseñado que hace que la edición de tus archivos de libro mayor de Beancount sea un placer. Creado con principios de diseño modernos y receptivos, el nuevo editor proporciona una experiencia de edición fluida e intuitiva, ya sea que estés en un escritorio, tableta o dispositivo móvil.

Integración de Git: tu libro mayor, a tu manera

Una de las características más solicitadas ya está aquí: la integración nativa de Git. Con la nueva versión, puedes extraer sin problemas tus cuentas de libro mayor utilizando los protocolos estándar de Git, lo que te brinda un control completo sobre tus datos financieros.

Lo que puedes hacer:

# Clona tu libro mayor en tu máquina
git clone https://git.beancount.io/tu-nombre-de-usuario/mi-libro-mayor.git

# Edita localmente con tus herramientas favoritas
vim 2025.bean

# Envía los cambios de vuelta
git commit -am "Se agregaron las transacciones del Q4"
git push

Por qué esto importa (soberanía de datos):

  • Verdadero plan de salida: tu historial financiero completo está en un repositorio Git estándar. ¿Dejas de pagarnos? Te quedas con todo.
  • Herramienta agnóstica: edita con VS Code, Vim, Emacs o herramientas especializadas de Beancount. Tu elección, no la nuestra.
  • Pista de auditoría completa: cada cambio se rastrea con el historial completo de Git, mostrando exactamente quién cambió qué y cuándo. Perfecto para el cumplimiento y la tranquilidad.
  • Copia de seguridad distribuida: la naturaleza distribuida de Git significa que tienes copias de seguridad automáticas con versiones en tu máquina.

Esto convierte a Beancount.io en la única plataforma que hace que tus datos sean más portátiles, no menos.

Colaboración en equipo: construido para cómo trabajan realmente los equipos

Ya sea que estés dirigiendo una pequeña empresa, trabajando con un contador o administrando las finanzas del hogar con un socio, la colaboración importa.

Colabora con tu equipo

El nuevo sistema de colaboración hace que esto sea natural y asequible:

  • Invita a colaboradores: simplemente invita a otros por correo electrónico a unirse a tu libro mayor como colaboradores
  • Actualizaciones en tiempo real: ve los cambios realizados por los colaboradores en tiempo real, manteniendo a todos sincronizados
  • Historial de actividades: realiza un seguimiento de quién realizó qué cambios y cuándo, manteniendo una total responsabilidad

Perfecto para pequeñas empresas, autónomos que trabajan con contadores o cualquier persona que necesite compartir responsabilidades de administración financiera. La colaboración nunca ha sido tan fácil ni tan segura.

Soporte multi-libro mayor: organiza tus finanzas a tu manera

La nueva versión admite la creación de múltiples libros mayores, lo que te brinda la flexibilidad de organizar tus finanzas exactamente como lo necesitas. Ya sea que desees libros mayores separados para finanzas personales y comerciales, diferentes proyectos o diferentes entidades, la nueva versión lo hace simple.

Beneficios del soporte multi-libro mayor:

  • Separación de preocupaciones: mantén las finanzas personales y comerciales completamente separadas
  • Organización basada en proyectos: crea libros mayores dedicados para diferentes proyectos o clientes
  • Estructura flexible: organiza tu sistema contable de una manera que tenga sentido para tu situación particular
  • Cambio fácil: muévete entre libros mayores sin problemas con el intuitivo selector de libros mayores

Crea tantos libros mayores como necesites para mantener tus registros financieros organizados y manejables.

Libros mayores públicos: comparte y aprende de la comunidad

La nueva versión presenta el intercambio público de libros mayores, lo que te permite compartir tus libros mayores bien estructurados con la comunidad de Beancount. Esta característica promueve el intercambio de conocimientos y ayuda a otros a aprender las mejores prácticas para organizar sus propios sistemas contables.

Cómo funcionan los libros mayores públicos:

  • Comparte tu experiencia y déjala volverse viral: haz que tu libro mayor sea público para ayudar a otros a aprender de tu configuración
  • Descubre las mejores prácticas: explora los libros mayores públicos para ver cómo otros organizan sus finanzas
  • Aprendizaje comunitario y red social: aprende de ejemplos del mundo real del uso eficaz de Beancount
  • Control de privacidad: tú decides qué libros mayores hacer públicos; tus libros mayores privados permanecen completamente privados

Al compartir excelentes ejemplos de libros mayores, estamos construyendo una comunidad de Beancount más sólida e informada donde todos puedan aprender y mejorar juntos.

Funciones mejoradas de Fava y la comunidad de Beancount

Hemos integrado funciones populares de la comunidad de Beancount que resuelven problemas reales del flujo de trabajo:

  • Amortización de gastos (amortize_over): distribuye suscripciones anuales o gastos pagados por adelantado automáticamente a lo largo de los meses
  • Previsión financiera (forecast): proyecta el flujo de caja futuro en función de las transacciones recurrentes
  • Enlace de documentos (link_documents): mantén los recibos y las facturas conectados a las transacciones
  • Detección automática de documentos (tag_discovered_documents): etiqueta y organiza automáticamente los documentos de respaldo

Estas no son características experimentales, son herramientas probadas en batalla de la comunidad de Beancount, ahora integradas a la perfección.

Rendimiento más rápido, experiencia más fluida

Bajo el capó, la nueva versión incluye optimizaciones de rendimiento significativas que hacen que todo se sienta más rápido:

  • Tiempos de carga más rápidos: las páginas y los informes se cargan notablemente más rápido, incluso con libros mayores grandes
  • Interacciones más fluidas: las interacciones de la interfaz de usuario son más receptivas, con una reducción del retraso al navegar entre las vistas
  • Procesamiento de datos optimizado: los cálculos complejos y la generación de informes se realizan de manera más eficiente
  • Mejor administración de recursos: el sistema utiliza los recursos de manera más inteligente, lo que garantiza un rendimiento constante incluso durante el uso máximo

Estas mejoras significan que pasas menos tiempo esperando y más tiempo administrando tus finanzas de manera efectiva.

Privacidad y seguridad: tus datos, tus reglas

Defendemos la soberanía de tus datos asegurando tu libro mayor en un repositorio Git privado y encriptado que es de tu total propiedad, puedes exportar y eliminar a voluntad. Este control exige responsabilidad: tú determinas el acceso gestionando colaboradores de confianza y debes tener extrema precaución al publicar libros mayores, entendiendo que los datos públicos son permanentemente visibles para Internet y deben ser cuidadosamente depurados de detalles sensibles. En última instancia, tus datos siguen siendo tuyos, protegidos por nuestra infraestructura pero regidos estrictamente por tus reglas.

¿Qué sigue?

La nueva versión es solo el comienzo de nuestro viaje para hacer de Beancount.io la mejor plataforma de contabilidad en texto plano disponible, apuntando hacia el GitHub de las finanzas. El software financiero tradicional se basa en el "Bloqueo de datos". Beancount.io está construyendo un tipo diferente de defensa: Bloqueo de protocolo. Ya estamos trabajando en:

  • Mejoras de la aplicación móvil para la contabilidad sobre la marcha
  • Integraciones adicionales con servicios financieros populares
  • Funciones de informes y análisis más avanzadas
  • Herramientas de colaboración mejoradas para equipos

¡Nos encantaría escuchar tus comentarios sobre la nueva versión! Tus comentarios nos ayudan a priorizar lo que construiremos a continuación.

¡Feliz contabilidad!

El equipo de Beancount.io

10 pasos prácticos para un cierre de mes rápido y fiable en Beancount

· 7 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

Si tu libro mayor está en texto plano, tu cierre de mes puede ser rápido y auditable. El proceso no tiene que ser una carrera frenética de hojas de cálculo y calculadoras. Esta guía destila un proceso limpio y repetible pensado para Beancount y su interfaz web, Fava, construido alrededor de aserciones de balance, importaciones inteligentes y verificaciones ligeras.

Aquí tienes la lista de verificación para un cierre sin problemas:

2025-09-02-month-end-close

  1. Recopila los extractos e importa todas las transacciones en bruto.
  2. Normaliza beneficiarios, descripciones y metadatos.
  3. Conciliación de cada cuenta de efectivo, banco y tarjeta de crédito con aserciones balance.
  4. Verifica transferencias y movimientos entre cuentas.
  5. Actualiza precios de inversiones y verifica valoraciones.
  6. Adjunta o enlaza documentos (recibos, facturas) en tu libro mayor.
  7. Ejecuta consultas y paneles para P&L y verificaciones de variaciones.
  8. Registra devengos y ajustes según sea necesario.
  9. Valida el libro mayor con verificaciones automatizadas.
  10. Confirma, etiqueta y archiva el mes.

1. Establece las reglas básicas (y reutilízalas)

Un cierre consistente comienza con una base estable. Tu Plan de Cuentas y las opciones clave de Beancount deben declararse de forma centralizada y cambiarse raramente. Opciones como operating_currency y la gestión de documents garantizan que tus informes e importaciones se comporten de forma predecible en cada ocasión.

Consejo: Trata tu archivo de opciones como “infraestructura”. Cambiarlo puede alterar cómo se calculan tus números. Versiona con cuidado en Git.


2. Importa todo — y nunca vuelvas a teclear manualmente

Automatizar la importación de datos es el mayor acelerador para cerrar tus libros. Usa las potentes herramientas de importación de Beancount y los importadores creados por la comunidad para extraer feeds bancarios, archivos CSV/OFX de tarjetas de crédito, datos de corretaje e informes de nómina.

El objetivo es una importación de un solo comando que genere asientos balanceados que solo necesites revisar y confirmar. Esto elimina la entrada manual de datos, la principal fuente de errores y retrasos.


3. Normaliza beneficiarios y metadatos al inicio

Los datos limpios son datos fiables. Estandariza tus beneficiarios, narraciones y etiquetas durante el proceso de importación para que tus búsquedas, reglas e informes sigan siendo precisos mes a mes.

El sistema de plugins de Beancount te permite añadir transformaciones ligeras y validaciones mientras se cargan tus archivos. Es perfecto para imponer verificaciones de consistencia personalizadas o usar el plugin incorporado noduplicates para señalar transacciones repetidas antes de que se conviertan en un problema.


4. Conciliación con aserciones balance

Para cada cuenta que tenga un extracto (corriente, ahorros, tarjetas de crédito), usa la directiva balance de Beancount para afirmar el saldo de cierre. Esta línea sencilla convierte la conciliación de una revisión manual en una prueba precisa y automatizada.

; Asegura que el saldo sea exactamente 1234.56 al inicio del día
2025-09-01 balance Assets:Bank:Checking 1234.56 USD

Como los saldos se verifican al principio del día, es más fácil usar el primer día del mes siguiente para un extracto de cierre de mes. Si el saldo calculado por Beancount difiere de tu aserción, obtendrás un error preciso y una fecha para iniciar la investigación. Siempre corrige la fuente de la verdad (tus transacciones) primero; no “forces” una conciliación.


5. Verifica transferencias entre cuentas

Asegúrate de que cada transferencia aparezca en ambos lados de la transacción. Un pago de tu cuenta corriente a tu tarjeta de crédito, por ejemplo, debe reflejarse en ambas cuentas. Las transferencias desajustadas son una fuente común de dolores de cabeza en la conciliación.

Usa la directiva pad solo para establecer saldos de apertura históricos cuando configuras una cuenta por primera vez. Es una herramienta de configuración, no una muleta de conciliación para arreglar diferencias al cierre.


6. Verifica posiciones y precios de inversiones

Para obtener una visión exacta de tu patrimonio neto, necesitas valores de mercado actualizados para tus inversiones y monedas extranjeras. Usa la directiva price de Beancount para registrar estos valores a la fecha de cierre.

2025-08-31 price VTI  290.14 USD
2025-08-31 price EUR 1.11 USD

Muchos herramientas pueden obtener estos precios automáticamente. Después de actualizarlos, vuelve a ejecutar tus informes de balance o patrimonio neto para ver los cambios de valoración.


7. Adjunta recibos y documentos de origen

Mantén una pista de auditoría limpia vinculando transacciones a sus documentos de origen. Usa la opción documents en tu archivo principal de Beancount para apuntar a tu archivo de recibos y facturas.

option "documents" "/path/to/Finance/Documents"

Si nombras tus archivos por fecha (p. ej., 2025-08-13.vendor.receipt.pdf), Beancount y Fava pueden descubrirlos y enlazarlos automáticamente, facilitando la visualización de un recibo para cualquier transacción con un solo clic.


8. Revisa el mes con Fava y BQL

Un ciclo de retroalimentación rápido es crítico. Usa Fava para inspeccionar visualmente tus finanzas. Sus gráficos e informes son perfectos para desglosar gastos por categoría, comprobar tendencias de ingresos y detectar anomalías de un vistazo.

Para verificaciones más precisas, usa el Beancount Query Language (BQL). Esta consulta, por ejemplo, te da un desglose ordenado de todos los gastos de agosto 2025:

SELECT
account,
ROUND(SUM(position), 2) AS total
WHERE
date >= 2025-08-01 AND date < 2025-09-01
AND account 'Expenses'
GROUP BY
account
ORDER BY
total DESC;

9. Registra devengos y ajustes

Si utilizas contabilidad de acumulación, registra tus ajustes de cierre como transacciones explícitas y fechadas. Esto puede incluir gastos devengados (como una factura de servicios que aún no has recibido), amortización de gastos prepagados o reconocimiento de ingresos. Mantenlos simples y bien documentados en la narración para que sean fáciles de entender en revisiones futuras.


10. Valida, etiqueta y archiva

Antes de finalizar el mes, ejecuta una última comprobación de integridad estructural:

bean-check your-ledger.beancount

Este comando detectará desbalances, referencias a cuentas no abiertas y otros errores comunes. Corrige todo lo que indique.

Una vez todo esté correcto, confirma tus cambios en el control de versiones (por ejemplo, Git) con un mensaje claro y una etiqueta, como close-2025-08. Finalmente, archiva tus extractos bancarios y considera el mes cerrado.


Un script de cierre sencillo que puedes adaptar

Puedes automatizar la mayor parte de estos pasos con un script de shell sencillo. Esto convierte tu cierre en un único comando repetible.

#!/usr/bin/env bash
set -euo pipefail

# Ejemplo: ./close.sh 2025-08
MONTH=${1:?Please provide a month in YYYY-MM format}
LEDGER= /finance/ledger.beancount

# 1. Importar nuevas transacciones
echo "Importando transacciones para $MONTH..."
make import MONTH="$MONTH"

# 2. Actualizar precios de mercado para el último día del mes
PRICE_DATE=$(date -d "$MONTH-01 +1 month -1 day" +%F)
echo "Obteniendo precios para $PRICE_DATE..."
make prices DATE="$PRICE_DATE"

# 3. Validar todo el libro mayor
echo "Ejecutando bean-check..."
bean-check "$LEDGER"

# 4. Generar un informe clave (p. ej., desglose de gastos)
echo "Generando informe de gastos para $MONTH..."
bean-query "$LEDGER" -f txt "
SELECT account, SUM(position)
WHERE date >= '${MONTH}-01' AND date < '${MONTH}-01' + 1 month
AND account 'Expenses'
GROUP BY account ORDER BY SUM(position) DESC;
" > "reports/${MONTH}-expenses.txt"

# 5. Confirmar y etiquetar el cierre en Git
echo "Confirmando y etiquetando el cierre..."
git -C /finance add .
git -C /finance commit -m "Close ${MONTH}"
git -C /finance tag "close-${MONTH}"

echo "Mes ${MONTH} cerrado y etiquetado."

Por qué funciona

Este proceso es rápido y fiable porque se basa en unos pocos principios clave:

  • Aserciones, no miradas: La directiva balance convierte la conciliación en una prueba precisa y automatizada.
  • Entradas determinísticas: Los importadores automáticos y los metadatos normalizados hacen que tu libro mayor sea reproducible y consistente.
  • Datos explorables: Fava y BQL proporcionan herramientas potentes para validar resultados y profundizar en outliers al instante.
  • Cambios auditables: Los ajustes son asientos de texto plano, fáciles de revisar y comprender meses o años después.

Un buen cierre de mes es, sobre todo, logística. Con Beancount, puedes convertirlo en un ritual corto y scriptable: importar, afirmar, valorar, consultar y confirmar. Mantén el flujo de trabajo estable y tu cierre seguirá siendo rápido, incluso cuando tu vida financiera sea más compleja.

Transforma tus datos financieros en hermosas visualizaciones

· 5 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

Nos complace anunciar una mejora importante en el ecosistema de Beancount.io: la integración oficial de beancount-dashboard. Esta poderosa nueva funcionalidad trae un conjunto de visualizaciones ricas e interactivas directamente a Fava, permitiéndote ver tu historia financiera de manera clara, atractiva y accionable.

Resumen del panel de Beancount


¿Qué es beancount-dashboard?

beancount-dashboard es un plugin de código abierto para Fava, la interfaz web de Beancount. Transforma tus datos financieros en texto plano en paneles dinámicos y reveladores, facilitando más que nunca la comprensión de tu salud financiera y la toma de decisiones informadas.

El plugin ofrece una amplia gama de visualizaciones potentes:

  • 📊 Vistas integrales de activos: Sigue tu patrimonio con un Gráfico de línea de patrimonio neto, monitoriza el rendimiento con Seguimiento de cartera detallado, y visualiza tu distribución con gráficos de pastel de Asignación de activos.
  • 💰 Análisis de ingresos y gastos: Comprende tu flujo de efectivo con precisión. Analiza Promedios mensuales, desglosa los gastos por Categoría, y observa cómo han cambiado tus hábitos con el Análisis año tras año.
  • ✈️ Gestión de costos de viajes: Sigue los costos de viajes anuales y analiza los patrones de gasto por destino para presupuestar de manera más eficaz los viajes futuros.
  • 🔄 Diagramas Sankey: Visualiza el flujo de tu dinero con gráficos interactivos que muestran cómo se mueven los fondos entre fuentes de ingresos, cuentas y categorías de gastos.
  • 📈 Proyecciones financieras: Planifica el futuro usando tus datos históricos para establecer metas y proyectar tu trayectoria financiera.

Panel de análisis financiero


Por qué integramos beancount-dashboard

Esta integración es un cambio de juego para la comunidad de Beancount, ofreciendo cuatro beneficios clave:

1. Experiencia de usuario mejorada

Beancount está construido sobre una base robusta de contabilidad de partida doble, pero los datos sin procesar pueden ser abrumadores. El plugin beancount-dashboard transforma los libros complejos en visualizaciones intuitivas, haciendo que la gestión financiera sea accesible y atractiva para todos.

2. Mejora en la toma de decisiones financieras

Los paneles visuales te permiten tomar decisiones financieras más inteligentes. Ayudan a identificar tendencias, optimizar presupuestos, seguir metas, y planificar con anticipación con confianza al presentar tus datos en un formato fácil de digerir.

3. Analítica de nivel profesional

Esta integración aporta potencia analítica de nivel empresarial a tu alcance. Impulsado por Apache ECharts, los paneles ofrecen gráficos interactivos, vistas personalizadas y actualizaciones en tiempo real que reflejan tus últimas transacciones. Su diseño responsivo garantiza una experiencia fluida en cualquier dispositivo.

4. Excelencia de código abierto

Tanto Beancount como beancount-dashboard están comprometidos con los principios de código abierto. Esto significa que obtienes total transparencia en cómo se manejan tus datos, la garantía de privacidad (ya que tus datos permanecen en tu propia infraestructura), y el apoyo de una comunidad activa e innovadora.

Seguimiento avanzado de cartera


Beneficios en el mundo real

Esta integración proporciona beneficios inmediatos y tangibles para varios tipos de usuarios:

Para finanzas personales:

  • Presupuesto: Ve exactamente a dónde va tu dinero cada mes.
  • Metas de ahorro: Visualiza tu progreso hacia un fondo de emergencia, unas vacaciones o la jubilación.
  • Monitoreo de inversiones: Mantén un ojo atento al rendimiento de tu cartera y a la asignación de activos.

Para pequeñas empresas:

  • Gestión de flujo de efectivo: Monitorea la liquidez del negocio y comprende los patrones de flujo de efectivo.
  • Análisis de gastos: Analiza los costos del negocio por departamento, proyecto o proveedor.
  • Planificación financiera: Usa datos históricos para presupuestos y pronósticos más precisos.

Para asesores financieros:

  • Presentaciones a clientes: Crea informes financieros profesionales y fáciles de entender.
  • Análisis de cartera: Realiza una asignación de activos integral y seguimiento del rendimiento.
  • Cumplimiento: Mantén registros detallados y accesibles para auditorías e informes.

¿Listo para transformar tu vida financiera?

Tu camino hacia una mejor gestión financiera comienza ahora. Con el poder de beancount-dashboard, tienes todas las herramientas que necesitas para tomar el control de tus finanzas.

  1. Visita beancount.io
  2. Crea tu cuenta gratuita para acceder al ecosistema completo de Beancount.
  3. Únete a miles de usuarios que ya gestionan sus finanzas con confianza.

Queremos tu opinión

Tus ideas son invaluables mientras seguimos refinando nuestra plataforma. Ayúdanos a mejorar compartiendo tus historias de éxito con el panel, solicitudes de funciones, y cualquier informe de errores que encuentres. Puedes conectar con el equipo de Beancount.io a través de nuestros Foros de la comunidad, Issues en GitHub, o en redes sociales.

Únete a una comunidad vibrante

Conecta con otros usuarios de Beancount para compartir configuraciones de paneles, aprender de expertos y aportar tu propio conocimiento. Mantente al día con nuevas funciones y ayuda a dar forma al futuro de la gestión financiera.

Esta integración representa un paso significativo hacia adelante. Al combinar el robusto motor contable de Beancount con las potentes visualizaciones de beancount-dashboard, ofrecemos analítica de nivel empresarial en un paquete de código abierto, centrado en la privacidad.

¿Listo para revolucionar tu seguimiento financiero? Regístrate en beancount.io hoy, experimenta el poder de beancount-dashboard y ayúdanos a construir juntos el futuro de la gestión financiera!

El ecosistema de Beancount: Un análisis exhaustivo

· 53 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

Funcionalidad principal y filosofía de Beancount

Beancount es un sistema de contabilidad de partida doble de código abierto que utiliza archivos de texto plano para registrar transacciones. En su esencia, Beancount trata su libro mayor como un conjunto de datos definido por una gramática simple y estricta. Cada evento financiero (transacciones, aperturas de cuentas, precios de commodities, etc.) es una directiva en un archivo de texto, que Beancount procesa en una base de datos de entradas en memoria. Este diseño impone el principio de partida doble: cada transacción debe cuadrar los débitos y créditos entre las cuentas. El resultado es un libro contable altamente transparente y auditable que puede controlar mediante versiones, inspeccionar y consultar con facilidad.

2025-04-15-beancount-ecosystem

Filosofía – corrección y minimalismo: El diseño de Beancount prioriza la integridad de los datos y la simplicidad. Su creador, Martin Blais, describe a Beancount como “pesimista” al asumir que el usuario cometerá errores y, por lo tanto, impone verificaciones y restricciones adicionales. Por ejemplo, Beancount no le permitirá retirar activos que nunca fueron añadidos (evitando tenencias de acciones o saldos de efectivo negativos) y puede obligar a que cada cuenta sea abierta antes de su uso. Carece del concepto de Ledger de asientos “virtuales” o balanceados automáticamente; una elección intencional para forzar entradas totalmente balanceadas. Beancount efectivamente “se vuelve radical con la corrección” con más verificaciones cruzadas de las que proporciona la partida doble básica. Este enfoque cauteloso atrae a usuarios que “no confían demasiado en sí mismos” y quieren que el software detecte sus errores.

Opciones mínimas, máxima consistencia: En contraste con la miríada de indicadores de línea de comandos y opciones de ajuste de Ledger, Beancount opta por el minimalismo. Hay muy pocas opciones globales, y ninguna que cambie la semántica de las transacciones fuera del archivo del libro mayor. Toda la configuración que afecta a la contabilidad (como los métodos de base de costo de commodities o los supuestos de registro) se realiza dentro del archivo mediante directivas o complementos, lo que garantiza que la carga del mismo archivo siempre produzca los mismos resultados, independientemente de cómo se generen los informes. Este diseño evita la complejidad de los múltiples controles de Ledger y las sutiles interacciones entre ellos. La filosofía de Beancount es que una herramienta contable debe ser un flujo de trabajo estable y determinista desde el archivo de entrada hasta los informes. Esto se logra tratando el libro mayor como un flujo ordenado de directivas que pueden procesarse programáticamente en secuencia. Incluso los elementos que Ledger trata como sintaxis especial (como los saldos de apertura o las declaraciones de precios) son directivas de primer nivel en el modelo de datos de Beancount, lo que hace que el sistema sea altamente extensible.

Extensibilidad mediante complementos y lenguaje de consultas: Beancount está implementado en Python y proporciona ganchos para inyectar lógica personalizada en el flujo de procesamiento. Los usuarios pueden escribir complementos en Python que operen sobre el flujo de transacciones (por ejemplo, para imponer una regla personalizada o generar entradas automáticas). Estos complementos se ejecutan a medida que se procesa el archivo, extendiendo eficazmente la funcionalidad principal de Beancount sin necesidad de modificar el código fuente. Beancount también incluye un potente lenguaje de consultas (inspirado en SQL) para segmentar y analizar el libro mayor. La herramienta bean-query trata el libro mayor procesado como una base de datos y le permite ejecutar consultas analíticas sobre él; por ejemplo, sumar gastos por categoría o extraer todas las transacciones de un beneficiario específico. En Beancount 3.x, esta capacidad de consulta se trasladó a un paquete independiente llamado beanquery, pero desde la perspectiva del usuario sigue proporcionando informes flexibles mediante consultas similares a SQL.

Texto plano y control de versiones: Como herramienta de contabilidad en texto plano, Beancount enfatiza el control del usuario y la longevidad de los datos. El libro mayor es simplemente un archivo de texto .beancount que puede editar en cualquier editor de texto. Esto significa que todo su historial financiero se almacena en un formato legible por humanos, y puede colocarlo en Git u otro VCS para rastrear los cambios a lo largo del tiempo. Los usuarios suelen mantener su archivo de Beancount bajo control de versiones para conservar una pista de auditoría de cada edición (con mensajes de confirmación que describen los cambios). Este enfoque se alinea con la filosofía de Beancount de que los datos contables, especialmente las finanzas personales o de pequeñas empresas, deben ser transparentes y “a prueba de futuro”, no bloqueados en una base de datos propietaria. En palabras del propio Martin Blais, Beancount es una “labor de amor” construida para ser simple, duradera y gratuita para la comunidad. Se desarrolló por primera vez alrededor de 2007 y ha evolucionado a través de importantes reescrituras (de la v1 a la v2, y ahora la v3 en 2024) para perfeccionar su diseño preservando su filosofía central de minimalismo y corrección.

Herramientas, complementos y extensiones en el ecosistema de Beancount

El ecosistema de Beancount ha desarrollado un rico conjunto de herramientas, complementos y extensiones que mejoran la funcionalidad principal del libro mayor. Estos cubren la importación de datos, la edición de libros contables, la visualización de informes y la adición de funciones contables especializadas. A continuación se presenta una visión general de los componentes clave y complementos en el mundo de Beancount:

Utilidades de Importación de Datos (Importadores)

Una de las necesidades más importantes para el uso práctico es la importación de transacciones desde bancos, tarjetas de crédito y otras instituciones financieras. Beancount proporciona un marco de importación y scripts de importación contribuidos por la comunidad para este propósito. En Beancount 2.x, el módulo integrado beancount.ingest (con comandos como bean-extract y bean-identify) se utilizaba para definir complementos de importación en Python y aplicarlos a los estados de cuenta descargados. En Beancount 3.x, esto ha sido reemplazado por un proyecto externo llamado Beangulp. Beangulp es un marco de importadores dedicado que evolucionó a partir de beancount.ingest y es ahora la forma recomendada de automatizar la importación de transacciones para Beancount 3.0. Permite escribir scripts en Python o herramientas de línea de comandos que leen archivos externos (como estados de cuenta en CSV o PDF) y generan asientos de Beancount. Este nuevo enfoque desacopla la lógica de importación del núcleo de Beancount; por ejemplo, el antiguo comando bean-extract ha sido eliminado en la v3 y, en su lugar, sus propios scripts de importación producen transacciones a través de la interfaz de línea de comandos (CLI) de Beangulp.

Existen docenas de importadores listos para usar para diferentes bancos y formatos, aportados por la comunidad. Hay scripts de importación para instituciones de todo el mundo: desde Alipay y WeChat Pay en China, hasta varios bancos europeos (Commerzbank, ING, ABN AMRO, etc.) y bancos de EE. UU. como Chase y Amex. Muchos de estos se recopilan en repositorios públicos (frecuentemente en GitHub) o en paquetes como beancount-importers. Por ejemplo, el proyecto Tarioch Beancount Tools (tariochbctools) ofrece importadores para bancos suizos y del Reino Unido, e incluso gestiona importaciones de transacciones de criptomonedas. Otro ejemplo es Lazy Beancount, que empaqueta un conjunto de importadores comunes (para Wise, Monzo, Revolut, IBKR, etc.) y proporciona una configuración basada en Docker para una automatización sencilla. Independientemente del banco o servicio financiero que utilice, es probable que alguien haya escrito un importador de Beancount para él, o puede escribir el suyo propio utilizando el framework Beangulp. La flexibilidad de Python permite que los importadores manejen el análisis de archivos CSV/Excel, descargas OFX/QIF o incluso la extracción de datos de APIs, para luego emitir transacciones en el formato estandarizado de Beancount.

Edición e Integración con Editores

Debido a que los libros contables de Beancount son simplemente texto, los usuarios a menudo aprovechan sus editores de texto o IDEs favoritos para mantenerlos. El ecosistema proporciona complementos de soporte para editores para hacer que esta experiencia sea más fluida. Existen extensiones para muchos editores populares que añaden resaltado de sintaxis, autocompletado de nombres de cuentas y comprobación de errores en tiempo real:

  • Emacs Beancount-Mode: Existe un modo principal de Emacs (beancount-mode) disponible para editar archivos .beancount, que ofrece funciones como coloreado de sintaxis e integración con el verificador de Beancount. Incluso puede ejecutar bean-check en segundo plano para que los errores en el libro mayor (como una transacción desbalanceada) se marquen mientras edita.
  • Extensión de VS Code: Una extensión de Beancount en el Marketplace de VSCode proporciona comodidades similares para los usuarios de Visual Studio Code. Admite resaltado de sintaxis, alineación de montos, autocompletado para cuentas/beneficiarios e incluso comprobaciones de saldo sobre la marcha al guardar el archivo. También puede integrarse con Fava, permitiéndole iniciar la interfaz web de Fava desde dentro de VSCode.
  • También existen complementos o modos para Vim, Atom y otros editores. Por ejemplo, hay una gramática de Tree-sitter para Beancount, que impulsa el resaltado de sintaxis en editores modernos e incluso fue adoptada en el componente de edición basado en web de Fava. En resumen, sea cual sea su entorno de edición, es probable que la comunidad haya proporcionado un complemento para que la edición de archivos de Beancount sea conveniente y libre de errores.

Para el ingreso rápido de transacciones fuera de los editores tradicionales, también existen herramientas como Bean-add y aplicaciones móviles. Bean-add es una herramienta de línea de comandos que permite añadir una nueva transacción a través de una solicitud o una sola línea, gestionando sugerencias de fechas y cuentas. En dispositivos móviles, un proyecto llamado Beancount Mobile proporciona una interfaz sencilla para ingresar transacciones sobre la marcha (por ejemplo, registrar una compra en efectivo desde su teléfono). Además, existe un Beancount Telegram Bot para capturar transacciones a través de mensajería: puede enviar un mensaje con los detalles de la transacción y el bot le da formato en su archivo de libro mayor.

Frontends Web y Herramientas de Visualización

(Fava) La interfaz web de Fava proporciona un panel de control interactivo para Beancount, con informes como un estado de resultados con visualizaciones (que se muestran aquí como un mapa de árbol de gastos por categoría) junto con tablas de cuentas y saldos.

El frontend insignia de Beancount es Fava, una interfaz web moderna. Fava funciona como una aplicación web local que lee su archivo de Beancount y genera una rica experiencia interactiva en su navegador. Ofrece un conjunto completo de informes: balance general, estado de resultados, patrimonio neto a lo largo del tiempo, posiciones de cartera, gráficos de rendimiento, presupuestos y más, todo de forma predeterminada. Los usuarios suelen citar a Fava como una razón principal para elegir Beancount sobre otras herramientas de contabilidad en texto plano. Con un solo comando (fava libro.beancount), puede explorar sus finanzas con gráficos y tablas en lugar de texto. Fava admite funciones como: desglosar cuentas, filtrar transacciones por beneficiario o etiqueta, un editor de consultas (para que pueda ejecutar consultas de Beancount y ver los resultados en el navegador) e incluso un editor web integrado para su libro mayor. Es altamente funcional, lo que hace que la contabilidad en texto plano sea accesible para aquellos que prefieren interfaces visuales.

Bajo el capó, Fava está escrito en Python (Flask en el backend) y JavaScript (Svelte en el frontend). Tiene su propio ciclo de lanzamientos y se mantiene activamente. Cabe destacar que Fava se ha mantenido al día con el desarrollo de Beancount; por ejemplo, Fava 1.30 añadió soporte para Beancount v3, cambiando internamente al uso de los nuevos paquetes beanquery y beangulp. (Todavía es compatible con Beancount 2 para libros contables antiguos). El enfoque de Fava en la usabilidad incluye detalles agradables como el autocompletado en el editor web y una interfaz de usuario elegante con modo oscuro y gráficos adaptables. También hay un derivado llamado Fava-GTK, que empaqueta Fava en una aplicación de escritorio para usuarios de GNOME/Linux que prefieren la sensación de una aplicación nativa.

Más allá de Fava, existen otras opciones de visualización y análisis. Debido a que los datos de Beancount pueden exportarse o consultarse como tablas, los usuarios a menudo aprovechan herramientas como los cuadernos de Jupyter o Pandas para realizar análisis personalizados. Por ejemplo, un usuario describe la obtención de datos de Beancount a través de la interfaz de consultas en un DataFrame de Pandas para preparar un informe personalizado. También hay scripts contribuidos por la comunidad para informes específicos; por ejemplo, una herramienta de análisis de asignación de cartera o un gráfico de control de procesos para gastos frente a patrimonio neto. Sin embargo, para la mayoría de las personas, Fava proporciona una potencia de generación de informes más que suficiente sin necesidad de escribir código. Incluso admite extensiones: puede integrar archivos Python que añaden nuevas páginas de informes o gráficos a Fava. Una extensión destacada es fava-envelope para el presupuesto por sobres dentro de Fava. En general, Fava sirve como el centro de visualización principal del ecosistema Beancount.

Utilidades y Scripts de Línea de Comandos

Beancount incluye varias herramientas de CLI ( especialmente en la versión antigua v2, algunas de las cuales fueron simplificadas en la v3 ). Estas herramientas operan sobre tu archivo ledger para verificarlo o generar informes específicos en texto o HTML :

  • bean-check : un validador que busca errores de sintaxis o errores contables en el archivo. Al ejecutar bean-check miarchivo.beancount, se te alertará sobre cualquier desequilibrio, cuenta faltante u otros problemas ; no mostrará nada si el archivo no contiene errores.
  • bean-format : un formateador que organiza tu libro mayor alineando los números en columnas ordenadas, de forma similar a como funciona un formateador de código en el código fuente. Esto ayuda a mantener el archivo limpio y legible.
  • bean-query : una shell interactiva o herramienta por lotes para ejecutar el lenguaje de consultas de Beancount en tu libro mayor. Puedes usarlo para generar informes tabulares personalizados ( por ejemplo, bean-query miarchivo.beancount "SELECT account, sum(amount) WHERE ..." ).
  • bean-report : un generador de informes versátil ( en v2 ) que puede mostrar informes predefinidos ( balance general, estado de resultados, balance de comprobación, etc. ) en la consola o en archivos. Por ejemplo, bean-report archivo.beancount balances imprimiría los saldos de las cuentas. ( En la práctica, muchos de estos informes de texto han sido reemplazados por la mejor presentación de Fava ).
  • bean-web / bean-bake : una interfaz web antigua que servía los informes en localhost o los "horneaba" como archivos HTML estáticos. Estos se usaban principalmente antes de que Fava se volviera popular ; bean-web proporcionaba una vista web básica de los mismos informes que bean-report podía generar. En Beancount 3, bean-web ha sido eliminado ( dado que Fava es ahora el frontend web recomendado, ofreciendo una experiencia superior ).
  • bean-example : una utilidad para generar un archivo de libro mayor de ejemplo ( útil para que los recién llegados vean una plantilla de entradas de Beancount ).
  • bean-doctor : una herramienta de depuración que puede diagnosticar problemas en tu libro mayor o en tu entorno.

Cabe destacar que, a partir de Beancount v3, muchas de estas herramientas se trasladaron fuera del proyecto principal. El paquete principal de Beancount se simplificó, y herramientas como el motor de consultas y los importadores se dividieron en paquetes separados ( beanquery, beangulp, etc. ) para facilitar el mantenimiento. Por ejemplo, la funcionalidad de bean-query ahora la proporciona la herramienta beanquery, que se instala por separado. Desde la perspectiva del usuario, la funcionalidad sigue estando disponible ; simplemente se ha modularizado. La comunidad de Arch Linux notó este cambio al actualizar Fava : el paquete de Fava añadió dependencias de beanquery y beangulp para soportar Beancount 3.x. Este enfoque modular también permite que otros miembros de la comunidad contribuyan a estas herramientas auxiliares de forma más independiente del ciclo de lanzamientos de Beancount.

Plugins y Extensiones de Beancount

Una fortaleza destacada del ecosistema de Beancount es su sistema de plugins. Al añadir una línea plugin "nombre.del.modulo" en tu archivo de Beancount, puedes incorporar lógica personalizada en Python que se ejecuta durante el procesamiento del libro mayor. La comunidad ha creado muchos plugins para ampliar las capacidades de Beancount :

  • Calidad de datos y reglas : Los ejemplos incluyen beancount-balexpr, que permite establecer ecuaciones que involucran múltiples cuentas ( por ejemplo, Activo A + Activo B = Pasivo X ), y beancount-checkclosed, que inserta automáticamente aseveraciones de saldo cuando cierras una cuenta para asegurar que el neto sea cero. Incluso existe un plugin para garantizar que las transacciones en el archivo estén ordenadas por fecha ( autobean.sorted ) para detectar entradas fuera de orden.
  • Automatización : El plugin beancount-asset-transfer puede generar entradas de transferencia en especie entre cuentas ( útil para mover acciones entre brokers manteniendo la base de costo ). Otro, autobean.xcheck, coteja tu libro mayor de Beancount con estados de cuenta externos para encontrar discrepancias.
  • Transacciones recurrentes y presupuestos : El plugin "repeat" o de interpolación de Akuukis permite definir transacciones recurrentes o distribuir un gasto anual a lo largo de los meses. Para la elaboración de presupuestos, la extensión fava-envelope ( utilizada a través de Fava ) soporta la metodología de presupuestos por sobres en texto plano. También existe MiniBudget de Frank Davies, una pequeña herramienta independiente inspirada en Beancount para ayudar con el presupuesto de uso personal o de pequeñas empresas.
  • Impuestos e informes : Algunos plugins ayudan con la contabilidad fiscal, como uno que clasifica automáticamente las ganancias de capital en corto o largo plazo. Otro ( fincen_114 de Justus Pendleton ) genera un informe FBAR para contribuyentes estadounidenses con cuentas en el extranjero, ilustrando cómo se pueden aprovechar los datos de Beancount para informes regulatorios.
  • Repositorios de plugins de la comunidad : Existen conjuntos de plugins seleccionados como beancount-plugins ( de Dave Stephens ), enfocados en cosas como entradas de depreciación, y beancount-plugins-zack ( de Stefano Zacchiroli ), que incluyen diversos ayudantes como directivas de ordenación.

Además de los plugins, otras herramientas de utilidad que orbitan alrededor de Beancount abordan necesidades específicas. Por ejemplo, beancount-black es un autoformateador similar al formateador de código Black, pero para archivos de libro mayor de Beancount. Existe un Beancount Bot ( Telegram / Mattermost ) para añadir transacciones a través del chat, como se mencionó anteriormente, y un flujo de trabajo de Alfred para macOS para añadir transacciones rápidamente a tu archivo. Una herramienta llamada Pinto ofrece una CLI "repotenciada" con entrada interactiva ( como un bean-add mejorado ). Para aquellos que migran desde otros sistemas, existen conversores ( YNAB2Beancount, CSV2Beancount, GnuCash2Beancount, Ledger2Beancount ) para ayudar a traer datos desde otros lugares.

En resumen, el ecosistema de Beancount es bastante extenso. La Tabla 1 a continuación enumera algunas de las principales herramientas y extensiones con sus funciones :

Herramienta / ExtensiónDescripción
Fava ( interfaz web )Aplicación web completa para visualizar y editar libros de Beancount. Ofrece informes interactivos ( balance general, ingresos, etc. ), gráficos y capacidades de consulta. Gran impulso a la usabilidad para Beancount.
Beangulp ( marco de importación )Marco de importación independiente para Beancount v3, que reemplaza el antiguo módulo de ingesta. Ayuda a convertir estados bancarios ( CSV, PDF, etc. ) en entradas de Beancount mediante scripts de plugins.
Beanquery ( herramienta de consulta )Motor de consultas independiente similar a SQL para datos de Beancount. Reemplaza a bean-query en v3, permitiendo consultas avanzadas de transacciones y saldos mediante una sintaxis SELECT-FROM-WHERE familiar.
Bean-check / Bean-formatHerramientas de CLI principales para validar un archivo de Beancount ( verificar errores ) y formatearlo automáticamente para mantener la consistencia. Útiles para mantener un libro mayor correcto y limpio.
Plugins de Editor ( Emacs, VSCode, Vim, etc. )Plugins / modos que añaden soporte de sintaxis de Beancount y linting en editores de texto. Mejoran la experiencia de editar manualmente archivos .beancount con funciones como autocompletado y resaltado de errores en vivo.
Importadores de la comunidadColecciones de scripts de importación bancaria ( muchos en GitHub ) que cubren bancos en EE. UU., la UE, Asia y más. Permiten a los usuarios ingerir automáticamente transacciones de sus instituciones financieras en Beancount.
Plugins ( extensiones de Ledger )Plugins opcionales dentro del archivo para aplicar reglas o añadir funcionalidad ( por ejemplo, gastos compartidos, entradas recurrentes, aseveraciones de saldo personalizadas ). Escritos en Python y ejecutados durante el procesamiento de archivos para personalización.

| Conversores ( herramientas de migración ) | Utilidades para convertir datos de otros formatos a Beancount, por ejemplo, de GnuCash o Ledger CLI al formato Beancount. Facilitan la adopción de Beancount sin empezar de cero. |

Comparación con Ledger, hledger y sistemas similares

Beancount pertenece a la familia de herramientas de contabilidad de partida doble en texto plano, entre las cuales destacan Ledger CLI (Ledger de John Wiegley) y hledger. Aunque todos estos sistemas comparten la idea central de archivos de libro mayor en texto plano y contabilidad de partida doble, difieren en sintaxis, filosofía y madurez del ecosistema. La siguiente tabla destaca las diferencias clave entre Beancount, Ledger y hledger:

AspectoBeancount (Python)Ledger CLI (C++)hledger (Haskell)
Sintaxis y estructura de archivosSintaxis estricta y estructurada definida por una gramática formal (BNF). Las transacciones tienen líneas explícitas de fecha bandera "Beneficiario" "Narración" y registros (postings) con cantidades; todas las cuentas deben abrirse/definirse explícitamente. No hay registros implícitos; cada transacción debe estar balanceada.Sintaxis más libre. El beneficiario/descripción suele estar en la misma línea que la fecha. Permite cierto balanceo implícito (como una transacción de un solo registro que puede implicar un segundo registro a una cuenta predeterminada). Los nombres de las cuentas se pueden usar sin declaración previa. Ofrece muchas opciones de línea de comandos que pueden afectar el procesamiento (por ejemplo, suposiciones de año, reglas de combinación de activos).Sigue en gran medida la sintaxis de Ledger con diferencias menores. hledger es una reimplementación de las funciones principales de Ledger en Haskell, por lo que el formato del diario es muy similar al de Ledger (con algunas extensiones y un procesamiento más estricto por defecto). Por ejemplo, hledger es un poco más estricto con las fechas y la sintaxis de los activos que Ledger, pero no tanto como Beancount.
FilosofíaConservadora y meticulosa. Enfatiza la detección de errores del usuario y el mantenimiento de la integridad de los datos por encima de todo. Impone muchas comprobaciones (aseveraciones de saldo, seguimiento de lotes) por defecto. Configuración mínima: un enfoque de "una sola forma de hacerlo" para mayor consistencia. Diseñado como una biblioteca con complementos para extensibilidad (trata los datos del libro mayor como un flujo a procesar, permitiendo lógica personalizada en Python).Optimista y flexible. Confía en que el usuario ingrese los datos correctamente; menos restricciones integradas por defecto. Altamente personalizable con docenas de opciones y banderas de comando para ajustar el comportamiento. Tiende a ser una herramienta monolítica con funciones integradas (informes, gráficos) y utiliza un lenguaje específico del dominio dentro del libro mayor para cosas como transacciones automatizadas y periódicas. La extensibilidad suele ser a través de scripts externos o el lenguaje de consulta integrado en lugar de API de complementos.Pragmática y consistente. Su objetivo es acercar el enfoque de Ledger a un público más amplio con un comportamiento predecible. hledger opta por una mayor consistencia por defecto (sin suposiciones de balanceo sin cuentas explícitas) y tiene menos riesgos de errores accidentales que los modos más permisivos de Ledger. Tiene un subconjunto de las funciones de Ledger (algunas de las opciones más exóticas de Ledger no son compatibles), pero agrega algunas propias (como una interfaz web e importación de CSV integradas). Enfatiza la estabilidad y la corrección, pero sin un sistema de complementos como el de Beancount.
Transacciones y balanceoPartida doble estricta: cada transacción debe tener débitos y créditos totales iguales. No permite entradas desbalanceadas ni marcadores de posición (sin "registros virtuales" que se balanceen automáticamente). También impone la independencia del orden: el libro mayor se puede ordenar por fecha arbitrariamente porque las aseveraciones de saldo tienen un alcance de fecha, sin depender del orden del archivo. El seguimiento de costos para los activos es riguroso: al vender activos, debe especificar los lotes o Beancount aplicará FIFO/LIFO de tal manera que no pueda retirar algo que no agregó.Permite más indulgencia en las transacciones. Ledger permite registros "virtuales" (usando corchetes [ ] o paréntesis) que no requieren una cuenta de balanceo explícita; a menudo se usan para manejar presupuestos o balanceo implícito de patrimonio. En Ledger es posible ingresar una transacción incompleta (omitiendo un lado) y dejar que Ledger infiera el monto de balanceo. Además, Ledger no impone estrictamente la eliminación de activos lote por lote; restará alegremente de un saldo agregado de activos incluso si no se rastrearon lotes específicos. Esto facilita la contabilidad de costo promedio, pero significa que Ledger no le impedirá cometer errores como vender más acciones de las que tiene en un lote determinado.Similar a Ledger al permitir registros virtuales y balanceo implícito, pero con un comportamiento más consistente. hledger impone reglas de procesamiento más estrictas que Ledger, pero es más permisivo que Beancount.
Inventario y base de costoSeguimiento preciso de lotes. Beancount adjunta información de costo a los lotes de activos (por ejemplo, compra de 10 acciones a $ 100 cada una), y al reducir un inventario requiere coincidir con un lote específico o usar una estrategia definida. Garantiza que las ganancias de capital y las bases de costo se calculen correctamente por diseño. El método de costo promedio no es el predeterminado a menos que escriba explícitamente la lógica para ello, porque Beancount trata cada lote de forma distinta para preservar la precisión.Inventario más abstracto. Ledger trata las cantidades de activos de manera más fluida; por defecto, todos los lotes se fusionan en los informes (solo muestra cantidades totales). Proporciona opciones para informar por lote o costo promedio si es necesario, pero esto es una cuestión de informes. Históricamente, Ledger no utilizaba la información de costo para imponer el balance en transacciones de múltiples activos, lo que podía llevar a sutiles errores de cálculo en las ganancias de capital. Sin embargo, la flexibilidad de Ledger permite a los usuarios elegir FIFO, LIFO, promedio, etc., al momento del informe mediante banderas de línea de comandos.Similar a Ledger con un manejo de inventario flexible. hledger puede rastrear lotes cuando se especifica, pero no impone el seguimiento lote por lote de manera tan estricta como Beancount. Los cálculos de ganancias de capital están disponibles pero requieren una configuración más manual.
Informes e interfaz de usuarioPrincipalmente a través de Fava (interfaz web) y bean-query/bean-report. Fava ofrece un panel web pulido con gráficos y diagramas, lo que hace que Beancount sea muy fácil de usar para el análisis. También admite informes textuales y consultas tipo SQL a través de bean-query. No hay una TUI (interfaz de texto) oficial, pero la integración con editores/IDE cubre esa brecha.Informes basados principalmente en CLI. Ledger tiene muchos comandos de informe integrados (balance, registro, estadísticas, etc.) que muestran texto en la terminal. Puede producir gráficos (ASCII o vía gnuplot) e incluso tiene algunos complementos para informes HTML, pero no tiene una interfaz web oficial mantenida como parte del proyecto. Para una interfaz, los usuarios confían en la terminal o tal vez en interfaces gráficas como Ledger-Live (un proyecto independiente).Ofrece tanto CLI como una interfaz web sencilla. hledger hereda los informes CLI de Ledger (con comandos similares) y adicionalmente proporciona hledger-web, una interfaz web básica para ver cuentas y transacciones en un navegador. hledger-web no es tan rico en funciones como Fava, pero ofrece una visión general de solo lectura. hledger también tiene hledger-ui, una interfaz basada en terminal para uso interactivo.
Extensibilidad y complementosAlta extensibilidad a través de Python. La API de complementos permite que se ejecute código Python arbitrario durante el procesamiento del libro mayor, lo que significa que los usuarios pueden implementar funciones personalizadas sin modificar el núcleo. El ecosistema de complementos (para presupuestos, etc.) demuestra esto. Además, se pueden escribir scripts en Python para usar las bibliotecas de Beancount para informes personalizados.Extensibilidad de nivel más bajo. Ledger se puede extender escribiendo sus propios scripts que analicen la salida de Ledger o utilizando su lenguaje de consulta interno de formas ingeniosas. También tiene características como transacciones automatizadas y periódicas, que son tipos de extensibilidad integrados dentro del archivo. Pero no ofrece una API para inyectar código arbitrario en el motor contable; no es una biblioteca de la misma manera (aunque existe libledger para desarrolladores de C++).Extensibilidad moderada. hledger omite deliberadamente las funciones de transacciones automatizadas/periódicas de Ledger para mantener las cosas más simples, pero proporciona herramientas como hledger-import para la conversión de otros formatos y permite complementos. Al estar escrito en Haskell, se utiliza como biblioteca en algunos proyectos, pero escribir complementos personalizados no es tan sencillo como en Beancount. hledger se enfoca en cubrir necesidades comunes dentro de su conjunto de herramientas oficial.
Comunidad y desarrolloActiva pero impulsada principalmente por un autor (Martin Blais) y un pequeño grupo de colaboradores. Los lanzamientos principales son poco frecuentes (la v2 fue estable durante ~6 años, luego la v3 en 2024). La comunidad contribuye a través de complementos y herramientas (Fava fue originalmente un proyecto de terceros que se volvió integral). La lista de correo y GitHub están activos, y la base de usuarios ha crecido gracias al atractivo de Fava para los no desarrolladores.Larga historia (Ledger se remonta a 2003) y amplio uso entre ingenieros. Originalmente un proyecto de una sola persona (Wiegley), vio muchos colaboradores a lo largo del tiempo. El desarrollo de Ledger se ha ralentizado en los últimos años; es estable pero con menos funciones nuevas. La lista de correo ledger-cli es un centro para todas las discusiones sobre contabilidad en texto plano. Existen muchas herramientas y scripts alrededor de Ledger, pero el ecosistema no está tan unificado.Comunidad en crecimiento, con Simon Michael liderando el desarrollo. hledger tiene lanzamientos anuales y mejoras constantes, a menudo siguiendo los cambios de funciones de Ledger pero también forjando su propio camino. Goza de popularidad entre los usuarios que desean el poder de Ledger con más previsibilidad. Su ecosistema incluye complementos como hledger-flow y se beneficia de la comunidad de Haskell.

En resumen, Beancount se diferencia por su énfasis en la rigurosidad, la extensibilidad basada en complementos y una interfaz web intuitiva. Ledger sigue siendo la herramienta clásica y altamente flexible favorecida por los puristas de la línea de comandos y aquellos que necesitan la máxima velocidad (el motor C++ de Ledger es muy rápido con archivos enormes). hledger proporciona un punto medio: gran parte de la funcionalidad de Ledger con un poco más de estructura y una interfaz web con soporte oficial (aunque sencilla). Los tres comparten las ventajas de la contabilidad en texto plano (auditabilidad, control de versiones con Git, datos legibles), pero el ecosistema de Beancount (especialmente con Fava) posiblemente lo ha hecho más accesible para el usuario promedio en los últimos años. Por otro lado, los usuarios de Ledger/hledger a veces prefieren su relativa simplicidad en la configuración (no se necesita Python) y su estabilidad probada a lo largo del tiempo. En última instancia, la elección entre ellos se reduce a la preferencia personal: aquellos que valoran la corrección rigurosa y un ecosistema rico a menudo se inclinan por Beancount, mientras que aquellos que desean herramientas ligeras y centradas en la terminal podrían preferir Ledger o hledger.

Casos de uso para Beancount

Beancount es lo suficientemente versátil como para ser utilizado tanto para el seguimiento de finanzas personales como (en algunos casos) para la contabilidad de pequeñas empresas. Su enfoque central de partida doble es el mismo en ambos escenarios, pero la escala y las prácticas específicas pueden variar.

Finanzas Personales

Muchos usuarios de Beancount lo emplean para gestionar sus finanzas individuales o familiares. Una configuración típica de finanzas personales en Beancount podría incluir cuentas para cheques y ahorros, tarjetas de crédito, inversiones, préstamos, categorías de ingresos (salario, intereses, etc.) y categorías de gastos (alquiler, comestibles, entretenimiento, etc.). Los usuarios registran las transacciones cotidianas ya sea de forma manual (ingresando recibos, facturas, etc.) o importándolas desde estados de cuenta bancarios utilizando las herramientas de importación analizadas anteriormente. Los beneficios que Beancount aporta a las finanzas personales incluyen:

  • Consolidación y Análisis: Todas sus transacciones pueden residir en un único archivo de texto (o un conjunto de archivos) que representa años de historial financiero. Esto facilita el análisis de tendencias a largo plazo. Con el lenguaje de consulta de Beancount o con Fava, puede responder a preguntas como "¿Cuánto gasté en viajes en los últimos 5 años?" o "¿Cuál es mi factura promedio mensual de comestibles?" en segundos. Un usuario señaló que después de cambiar a Beancount, “el análisis de datos financieros (gastos, donaciones, impuestos, etc.) es trivial”, ya sea a través de Fava o consultando los datos y utilizando herramientas como Pandas. En esencia, su libro mayor se convierte en una base de datos financiera personal que puede consultar a voluntad.
  • Presupuestación y Planificación: Aunque Beancount no impone un sistema de presupuestación, usted puede implementar uno. Algunos usuarios realizan una presupuestación por sobres creando cuentas de presupuesto o utilizando el plugin fava-envelope. Otros simplemente utilizan informes periódicos para comparar el gasto con los objetivos. Al ser texto plano, la integración de Beancount con herramientas de presupuestación externas o hojas de cálculo es sencilla (exportando datos o utilizando salidas CSV de las consultas).
  • Seguimiento de Inversiones y Patrimonio Neto: Beancount destaca en el seguimiento de inversiones gracias a su robusto manejo de bases de costos y precios de mercado. Puede registrar compras/ventas de acciones, criptomonedas, etc., con detalles de costos, y luego usar directivas de Prices (Precios) para realizar un seguimiento del valor de mercado. Fava puede mostrar un gráfico de patrimonio neto a lo largo del tiempo y un desglose de la cartera por clase de activo. Esto es enormemente útil para la gestión del patrimonio personal: obtiene información similar a la que proporcionan herramientas comerciales como Mint o Personal Capital, pero totalmente bajo su control. El manejo multimoneda también está integrado, por lo que si posee divisas extranjeras o criptomonedas, Beancount puede rastrearlas y convertirlas para la elaboración de informes.
  • Conciliación y Precisión: Las finanzas personales a menudo implican la conciliación con los estados de cuenta bancarios. Con Beancount, se pueden conciliar cuentas regularmente utilizando aseveraciones de saldo (balance assertions) o la función de documentos. Por ejemplo, cada mes podría agregar una entrada balance Assets:Bank:Checking <fecha> <saldo> para confirmar que su libro mayor coincide con el estado de cuenta del banco al final del mes. La herramienta bean-check (o la pantalla de errores de Fava) le alertará si las cifras no cuadran. Un usuario menciona realizar una conciliación mensual de todas las cuentas, lo que “ayuda a detectar cualquier actividad inusual”, una buena práctica de higiene financiera personal que Beancount facilita.
  • Automatización: Los usuarios con conocimientos técnicos han automatizado gran parte de su flujo de trabajo de finanzas personales con Beancount. Utilizando importadores, tareas programadas (cron jobs) y quizás un poco de Python, puede configurar su sistema para que, por ejemplo, cada día se obtengan sus transacciones bancarias (algunos usan OFX o APIs) y se añadan a su archivo de Beancount, categorizadas mediante reglas. Con el tiempo, su libro mayor se actualiza mayoritariamente de forma automática y usted solo revisa y ajusta según sea necesario. Un miembro de la comunidad en Hacker News compartió que, después de 3 años, sus libros de Beancount eran “95 % automáticos”. Este nivel de automatización es posible gracias a la apertura del texto plano y las capacidades de scripting de Beancount.

Los usuarios de finanzas personales suelen elegir Beancount en lugar de hojas de cálculo o aplicaciones porque les otorga la propiedad completa de los datos (sin depender de un servicio en la nube que podría cerrar; una preocupación real, como ocurrió cuando se discontinuó Mint, por ejemplo) y porque la profundidad de los conocimientos es mayor cuando tiene todos sus datos integrados. La curva de aprendizaje no es despreciable —uno debe aprender contabilidad básica y la sintaxis de Beancount— pero recursos como la documentación oficial y los tutoriales de la comunidad ayudan a los principiantes a comenzar. Una vez configurado, muchos descubren que les aporta tranquilidad tener una imagen clara y confiable de sus finanzas en todo momento.

Contabilidad para Pequeñas Empresas

El uso de Beancount para una pequeña empresa (o entidad sin fines de lucro, club, etc.) es menos común que el uso personal, pero es ciertamente posible y algunos lo han hecho con éxito. El marco de partida doble de Beancount es, de hecho, el mismo sistema que sustenta la contabilidad corporativa, solo que sin algunas de las funciones de alto nivel que proporciona el software de contabilidad dedicado (como módulos de facturación o integraciones de nómina). Así es como Beancount puede encajar en el contexto de una pequeña empresa:

  • Libro Mayor y Estados Financieros: Una pequeña empresa puede tratar el archivo de Beancount como su Libro Mayor. Tendría cuentas de activos para cuentas bancarias, cuentas por cobrar, tal vez inventario; cuentas de pasivos para tarjetas de crédito, préstamos, cuentas por pagar; patrimonio para el capital del propietario; cuentas de ingresos para ventas o servicios; y cuentas de gastos para todos los gastos del negocio. Al mantener este libro mayor, puede producir un Estado de Resultados (Pérdidas y Ganancias) y un Balance de Situación en cualquier momento utilizando los informes o consultas de Beancount. De hecho, los informes integrados de Beancount o Fava pueden generar un balance y un PyG en segundos que cumplen perfectamente con los principios contables. Esto puede ser suficiente para que una operación pequeña evalúe la rentabilidad, la posición financiera y el flujo de caja (con un poco de consulta para el flujo de caja, ya que los estados de flujo de caja directos no están integrados pero pueden derivarse).
  • Facturas y Cuentas por Cobrar/Pagar (A/R, A/P): Beancount no tiene un sistema de facturación integrado; los usuarios suelen gestionar la facturación externamente (por ejemplo, creando facturas en Word o en una aplicación de facturas) y luego registran los resultados en Beancount. Por ejemplo, al emitir una factura, registraría una entrada debitando Cuentas por Cobrar y acreditando Ingresos. Cuando llega el pago, debita Efectivo/Banco y acredita Cuentas por Cobrar. De esta manera, puede realizar un seguimiento de las cuentas por cobrar pendientes observando el saldo de la cuenta A/R. Lo mismo se aplica a las facturas de proveedores (A/P). Aunque es más manual que el software de contabilidad especializado (que podría enviar recordatorios o integrarse con correos electrónicos), es perfectamente factible. Algunos usuarios han compartido plantillas o flujos de trabajo sobre cómo gestionan las facturas con Beancount y se aseguran de no omitir facturas pendientes (por ejemplo, utilizando metadatos o consultas personalizadas para enumerar las facturas impagas).
  • Inventario o Costo de los Bienes Vendidos: Para las empresas que venden productos, Beancount puede rastrear las compras y ventas de inventario, pero requiere entradas disciplinadas. Podría utilizar las funciones de Inventory y contabilidad de costos: la compra de inventario aumenta una cuenta de activo (con el costo adjunto a los artículos), su venta traslada el costo a un gasto (COGS) y registra el ingreso. Debido a que Beancount insiste en emparejar lotes, obligará a una reducción adecuada del inventario con el costo correcto, lo que de hecho puede garantizar que sus cálculos de beneficio bruto sean precisos si se hacen correctamente. Sin embargo, no hay un seguimiento automatizado de SKU ni nada similar; todo es a nivel financiero (cantidad y costo).
  • Nómina y Transacciones Complejas: Beancount puede registrar transacciones de nómina (gastos salariales, retenciones de impuestos, etc.), pero el cálculo de esas cifras podría realizarse externamente o mediante otra herramienta, y luego simplemente asentarse en Beancount. Para una empresa muy pequeña (por ejemplo, uno o dos empleados), esto es manejable. Registraría, por ejemplo, un único asiento de diario por período de pago que desglose salarios, impuestos retenidos, gastos de impuestos del empleador, efectivo pagado, etc. Hacer esto manualmente es similar a cómo se haría en los asientos de diario de QuickBooks: requiere conocimiento de qué cuentas afectar.
  • Multiusuario y Auditoría: Un desafío en un entorno empresarial es si varias personas necesitan acceder a los libros o si un contador necesita revisarlos. Dado que Beancount es un archivo de texto, no es multiusuario en tiempo real. Sin embargo, alojar el archivo en un repositorio Git puede permitir la colaboración: cada persona puede editar y confirmar cambios (commit), y las diferencias pueden fusionarse.
  • Cumplimiento Normativo: Para la presentación de impuestos o el cumplimiento, los datos de Beancount pueden usarse para generar los informes necesarios, pero esto puede requerir consultas personalizadas o plugins. Vimos un ejemplo de un plugin de la comunidad para informes de cumplimiento del gobierno indio, y otro para informes FBAR de la FinCEN. Esto demuestra que, con esfuerzo, Beancount puede adaptarse para cumplir con requisitos de informes específicos. Las pequeñas empresas en jurisdicciones con requisitos sencillos (contabilidad de caja o devengo básico) ciertamente pueden mantener sus libros en Beancount y producir estados financieros para las declaraciones de impuestos. Sin embargo, funciones como los programas de depreciación o amortización podrían requerir que escriba sus propios asientos o utilice un plugin (los plugins de depreciación de Dave Stephens ayudan a automatizar eso, por ejemplo). No hay una interfaz gráfica para "hacer clic en depreciar activo" como en algunos software de contabilidad; usted codificaría la depreciación como transacciones (lo que, en cierto modo, la desmitifica: todo es un asiento que puede inspeccionar).

En la práctica, muchos propietarios de pequeñas empresas con orientación tecnológica han utilizado Beancount (o Ledger/hledger) si prefieren el control y la transparencia sobre la conveniencia de QuickBooks. Una discusión en Reddit señaló que para la contabilidad estándar de una pequeña empresa con un volumen limitado de transacciones, Beancount funciona bien. El factor limitante suele ser el nivel de comodidad: si el propietario del negocio (o su contador) se siente cómodo con una herramienta basada en texto. Una ventaja es el costo: Beancount es gratuito, mientras que el software de contabilidad puede ser costoso para una pequeña empresa. Por otro lado, la falta de soporte oficial y su naturaleza de "hágalo usted mismo" significan que es más adecuado para quienes son propietarios del negocio y tienen cierta inclinación técnica. Para freelancers o trabajadores autónomos con habilidades de programación, Beancount puede ser una opción atractiva para gestionar sus finanzas sin depender de servicios de contabilidad en la nube.

Los enfoques híbridos también son posibles: algunas pequeñas empresas utilizan un sistema oficial para facturas o nóminas, pero importan periódicamente los datos a Beancount para análisis y archivo. De esta manera, obtienen lo mejor de ambos mundos: cumplimiento y facilidad para las operaciones diarias, además del poder de Beancount para una visión consolidada.

En resumen, Beancount puede manejar la contabilidad de pequeñas empresas, siempre que el usuario esté dispuesto a gestionar manualmente las cosas que el software comercial automatiza. Garantiza un alto grado de transparencia —usted comprende profundamente sus libros porque los está escribiendo— y, para un usuario diligente, puede producir una contabilidad impecable. Tanto los usuarios personales como los empresariales se benefician de las fortalezas centrales de Beancount: un motor contable confiable, una pista de auditoría completa y la flexibilidad para adaptarse a escenarios únicos (a través de scripting y plugins). Ya sea para rastrear un presupuesto familiar o las finanzas de una startup, Beancount ofrece un conjunto de herramientas para hacerlo con precisión y apertura.

Actividad de la Comunidad y Desarrollo

Beancount cuenta con una comunidad dedicada y una historia de desarrollo que refleja su naturaleza de código abierto, de nicho pero apasionada. A continuación, se presentan los puntos clave sobre su comunidad, mantenedores y proyectos relacionados :

  • ** Mantenimiento del Proyecto : ** El autor principal de Beancount es Martin Blais, quien comenzó el proyecto alrededor de 2007 y lo ha guiado a través de múltiples versiones. Durante mucho tiempo, el desarrollo fue en gran medida un esfuerzo individual ( aparte de las contribuciones de parches de la comunidad ). La filosofía de Martin era construir una herramienta de contabilidad " útil para mí primero , así como para otros , de la manera más simple y duradera ". Esta motivación personal mantuvo el proyecto en marcha como una labor por amor al arte. A partir de 2025 , Martin Blais sigue siendo el mantenedor principal ( su nombre aparece en los commits y responde preguntas en la lista de correo / seguidor de incidencias ), pero el ecosistema alrededor de Beancount cuenta con muchos otros colaboradores en sus respectivos proyectos.

  • ** GitHub y Repositorios : ** El código fuente está alojado en GitHub bajo el repositorio beancount/beancount. El proyecto tiene licencia GPL - 2.0 y ha atraído a un número moderado de colaboradores a lo largo de los años. A mediados de 2024 , la ** Versión 3 de Beancount ** se lanzó oficialmente como la nueva rama estable. Este lanzamiento implicó la división de algunos componentes : por ejemplo , el repositorio ** beangulp ** ( para importadores ) y el repositorio ** beanquery ** ( para la herramienta de consultas ) ahora forman parte de la organización beancount en GitHub , manteniéndose de forma algo independiente. El repositorio principal de Beancount se centra en el motor de contabilidad central y el analizador de archivos. A partir de 2025 , el GitHub de Beancount muestra discusiones activas sobre incidencias y cierto desarrollo continuo ; aunque no es de gran volumen , las incidencias y los pull requests llegan gradualmente , y se realizan actualizaciones ocasionales para corregir errores o perfeccionar funciones.

  • ** Desarrollo de Fava : ** Fava , la interfaz web , comenzó como un proyecto independiente ( creado por Dominic Aumayr , quien registró los derechos de autor en 2016 ). Tiene su propia comunidad de colaboradores y también está en GitHub bajo beancount/fava. Los mantenedores y colaboradores de Fava ( por ejemplo , Jakob Schnetz , Stefan Otte y otros en años recientes ) han estado mejorando activamente la interfaz , con lanzamientos cada pocos meses. El chat de Gitter de Fava ( enlazado en la documentación de Fava ) y el seguidor de incidencias de GitHub son lugares donde los usuarios y desarrolladores discuten nuevas características o errores. El proyecto agradece las contribuciones , como lo demuestra una nota en el CHANGELOG agradeciendo a múltiples miembros de la comunidad por sus PRs. La estrecha alineación de Fava con el desarrollo de Beancount ( como la rápida adición de soporte para Beancount v3 y la nueva sintaxis de beanquery ) indica una buena colaboración entre ambos proyectos.

  • ** Listas de Correo y Foros : ** Beancount tiene una lista de correo oficial ( anteriormente en Google Groups , titulada " Beancount " o a veces discutida en la lista general de Ledger ). Esta lista de correo es un tesoro de conocimientos : los usuarios hacen preguntas sobre cómo modelar ciertos escenarios , reportan errores y comparten consejos. Martin Blais es conocido por responder en la lista de correo con explicaciones detalladas. Además , la comunidad más amplia de ** Contabilidad en Texto Plano ** ( Plain Text Accounting ) se solapa considerablemente. La lista de correo de Ledger CLI a menudo también atiende preguntas sobre Beancount , y existe un foro en plaintextaccounting.org y un subreddit r/plaintextaccounting donde los temas de Beancount surgen con frecuencia. Los usuarios en estas plataformas discuten comparaciones , comparten configuraciones personales y ayudan a los recién llegados. El tono general de la comunidad es muy cooperativo : los usuarios de Beancount a menudo ayudan a los de Ledger y viceversa , reconociendo que todas estas herramientas tienen objetivos similares.

  • ** Grupos de Chat : ** Además de las listas de correo , existen canales de chat como el ** Slack / Discord de Plaintext Accounting ** ( organizado por la comunidad ) y el Gitter de Fava. Estas son formas menos formales y más en tiempo real de obtener ayuda o discutir funciones. Por ejemplo , uno podría entrar al Slack para preguntar si alguien tiene un importador para un banco específico. También hay un canal de Matrix / IRC ( históricamente #ledger o #beancount en IRC ) donde algunos usuarios de larga data permanecen activos. Aunque no son tan populosos como las comunidades de software convencional , estos canales cuentan con personas expertas que a menudo pueden responder preguntas contables oscuras.

  • ** Colaboradores y Miembros Clave de la Comunidad : ** Algunos nombres destacan en la comunidad de Beancount :

    • ** “ Redstreet ” ( Red S ) : ** Un colaborador prolífico que ha escrito muchos plugins ( como beancount-balexpr , sellgains y otros ) y a menudo brinda soporte. También mantiene un conjunto de scripts importadores y una herramienta llamada bean-download para descargar estados de cuenta.
    • ** Vasily M ( Evernight ) : ** Autor de algunos marcos de trabajo para importadores y plugins como beancount-valuation , además de contribuciones a Fava relacionadas con inversiones.
    • ** Stefano Zacchiroli ( zack ) : ** Un desarrollador de Debian que creó el beancount-mode para Emacs y su propio repositorio de plugins. También ha abogado por la contabilidad en texto plano en entornos académicos.
    • ** Simon Michael : ** Aunque es principalmente el líder de hledger , dirige plaintextaccounting.org , que incluye a Beancount. Este intercambio de ideas ayudó a que Beancount captara la atención de los usuarios de Ledger / hledger.
    • ** Frank hell ( Tarioch ) : ** Colaborador de las Tarioch Beancount Tools , un conjunto importante de importadores y extractores de precios , especialmente para instituciones europeas.
    • ** Siddhant Goel : ** Un miembro de la comunidad que escribe blogs sobre Beancount ( por ejemplo , su guía sobre la migración a la v3 ) y mantiene algunos importadores. Sus publicaciones de blog han ayudado a muchos usuarios nuevos.

    Estos y muchos otros contribuyen con código , documentación y ayuda en foros , haciendo que el ecosistema sea vibrante a pesar de su tamaño relativamente pequeño.

  • ** Estadísticas de GitHub y Forks : ** El repositorio de GitHub de Beancount ha acumulado algunos cientos de estrellas ( lo que indica interés ) y forks. Los forks notables del propio Beancount son raros ; no existe un fork divergente bien conocido que intente ser " Beancount pero con la función X ". En cambio , cuando los usuarios querían algo diferente , escribían un plugin o utilizaban otra herramienta ( como hledger ) en lugar de hacer un fork de Beancount. Se podría considerar a ** hledger ** como una especie de fork de Ledger ( no de Beancount ) y a ** Beancount ** en sí mismo como una reinvención independiente de las ideas de Ledger , pero dentro del repositorio de Beancount no hay grandes proyectos escindidos. La comunidad generalmente se ha unido en torno al repositorio principal y lo ha ampliado a través de la interfaz de plugins en lugar de fragmentar el código base. Probablemente esto se deba a que Martin Blais estaba abierto a contribuciones externas ( sus documentos incluso tienen una sección que reconoce contribuciones y módulos externos ) y la arquitectura de plugins hizo innecesario mantener un fork para la mayoría de las nuevas funciones.

  • ** Recursos de la Comunidad : ** Existen varios recursos de alta calidad para aprender y usar Beancount creados por la comunidad :

    • La ** documentación de Beancount ** en GitHub Pages ( y los Google Docs originales que mantiene Martin ) : muy completa , incluyendo teoría sobre contabilidad y cómo Beancount la implementa.
    • Numerosas ** publicaciones de blog ** y notas personales : por ejemplo , LWN.net publicó un artículo titulado " Counting beans… with Beancount " , y muchos blogs personales ( como se enumeran en la sección " Blog Posts " de Awesome Beancount ) comparten experiencias y consejos. Estos ayudan a generar conocimiento y atraer nuevos usuarios.
    • ** Charlas y presentaciones : ** Beancount ha sido presentado en encuentros y conferencias ( por ejemplo , una charla en PyMunich 2018 sobre la gestión de finanzas con Python / Beancount ). Tales charlas presentan la herramienta a audiencias más amplias y a menudo despiertan interés en foros como Hacker News.
  • ** Proyectos Relacionados Destacados : ** Además de Fava , algunos otros proyectos relacionados con Beancount tienen sus propias comunidades :

    • ** Sitio de Plain Text Accounting : ** mantenido por Simon Michael , agrega información sobre todas estas herramientas y tiene un foro donde las personas comparten el uso de varias herramientas , incluido Beancount.
    • ** Integración de herramientas financieras : ** Algunos usuarios integran Beancount con herramientas de inteligencia de negocios o bases de datos. Por ejemplo , un hilo de Google Groups detalla el uso de PostgreSQL con datos de Beancount a través de funciones personalizadas. Aunque no es algo común , muestra el espíritu experimental de la comunidad para ampliar las capacidades de Beancount ( por ejemplo , para manejar conjuntos de datos muy grandes o consultas complejas más allá de las integraciones nativas ).

En resumen , la comunidad de Beancount , aunque más pequeña que la de los grandes proyectos de código abierto , está ** altamente comprometida y es muy conocedora **. El proyecto disfruta de un flujo constante de mejoras y canales de soporte muy útiles. El espíritu colaborativo ( compartir importadores , escribir plugins , responder preguntas ) significa que un recién llegado en 2025 puede confiar en el extenso trabajo previo y la sabiduría de la comunidad para configurar su sistema contable. El desarrollo es activo en el sentido del ecosistema ( lanzamientos de Fava , desarrollo de plugins , etc. ) , incluso si los cambios en el núcleo son más ocasionales. El crecimiento del ecosistema ( como lo demuestra la lista Awesome Beancount con docenas de herramientas ) habla de una comunidad saludable que hace que Beancount sea cada vez más capaz.

Desarrollos Recientes y Próximas Funcionalidades

A partir de 2025, el ecosistema de Beancount ha experimentado desarrollos significativos en los últimos años, y existen discusiones continuas sobre futuras mejoras. Aquí presentamos algunos desarrollos recientes dignos de mención y un vistazo a lo que podría estar por venir:

  • Lanzamiento de Beancount 3.0 (2024): Después de un largo periodo en el que Beancount 2.x fue el estándar, la versión 3 se lanzó oficialmente a mediados de 2024. Este fue un hito importante porque la v3 representa una simplificación y modernización del código base. Martin Blais había visualizado la v3 como una oportunidad para “reorganizar y simplificar” el sistema aún más. Aunque originalmente se pensó que sería una reescritura total, en la práctica la actualización para los usuarios no fue demasiado disruptiva. Los cambios principales ocurrieron bajo el capó: un nuevo analizador (parser), algunas mejoras de rendimiento y la extracción de componentes opcionales fuera del núcleo. El lanzamiento se realizó de forma gradual (la v3 estuvo en fase beta desde 2022, pero para julio de 2024 se convirtió en la versión estable recomendada). Usuarios como Siddhant Goel informaron que la migración de 2.x a 3.x fue “en su mayoría sin incidentes”, con solo unos pocos cambios en el flujo de trabajo.

  • Modularización – herramientas trasladadas a paquetes separados: Uno de los grandes cambios con Beancount 3 es que muchas herramientas que solían vivir en el repositorio monolítico se independizaron. Por ejemplo, bean-query ahora es proporcionado por el paquete beanquery, y beancount.ingest fue reemplazado por el paquete beangulp. Comandos como bean-extract y bean-identify (para importaciones) se eliminaron del núcleo de Beancount. En su lugar, la filosofía es utilizar scripts independientes para la importación. Esto significa que si actualizas a la v3, instalarías beangulp y ejecutarías scripts importadores (cada importador es básicamente un pequeño programa) en lugar de tener un archivo de configuración central bean-extract. De manera similar, las consultas se ejecutan a través de beanquery, que puede instalarse y actualizarse independientemente del núcleo de Beancount. Este enfoque modular fue diseñado para facilitar el mantenimiento y fomentar las contribuciones de la comunidad. También redujo el tamaño del núcleo de Beancount, permitiendo que este se concentre puramente en el análisis y la lógica contable, mientras que la funcionalidad auxiliar puede evolucionar por separado. Desde la perspectiva del usuario, después de actualizar, es necesario ajustar los comandos (por ejemplo, usar bean-query de beanquery, o usar Fava, que abstrae esto de todos modos). El registro de cambios de Fava señala explícitamente estos cambios: Fava ahora depende de beanquery y beangulp, y maneja los flujos de trabajo de importación de manera diferente para Beancount 3 frente a la v2.

  • Mejoras de Rendimiento: El rendimiento fue una de las motivaciones para revisar el diseño de Beancount. El plan de la v3 (como se describe en el documento “V3 goals” de Martin) incluía la optimización del analizador y la posibilidad de hacer que el proceso de carga fuera más rápido y consumiera menos memoria. Para 2025, algunas de estas mejoras se han materializado. Anecdóticamente, los usuarios con libros contables muy grandes (decenas de miles de transacciones o muchas operaciones con acciones) han reportado un mejor rendimiento con la última versión. Por ejemplo, un usuario que manejaba “transacciones de microinversión” y enfrentaba problemas de rendimiento señaló estas preocupaciones en el grupo de Google; este tipo de comentarios probablemente influyó en el desarrollo de la v3. El nuevo analizador es más eficiente y está escrito de una manera más clara, lo que podría ampliarse en el futuro. Además, Fava 1.29 pasó a un mecanismo de vigilancia de archivos más eficiente (utilizando la biblioteca watchfiles) para mejorar la capacidad de respuesta cuando el libro contable cambia. Mirando hacia el futuro, la comunidad podría explorar el análisis incremental (procesar solo las partes modificadas del archivo en lugar de todo) para manejar libros contables grandes con mayor rapidez; esto se insinuó en los documentos como la idea de “Servidor Beancount / reserva incremental”.

  • Mejoras en el Seguimiento de Inversiones: Se ha trabajado continuamente para mejorar los informes de inversiones y carteras. Por ejemplo, se discutió extensamente el manejo de la base de costo promedio frente a FIFO. Aunque Beancount impone el emparejamiento de lotes (lot matching), algunos usuarios prefieren el costo promedio para ciertas jurisdicciones. Existe una propuesta y discusión sobre flexibilizar el registro de la base de costo (posiblemente a través de un plugin u opción). Para 2025, no hay un interruptor integrado para el costo promedio, pero el trabajo de base en la v3 (el rediseño de las reservas) facilita que los plugins lo implementen. Se lanzó un plugin comunitario llamado “Gains Minimizer” que puede sugerir qué lotes vender para minimizar impuestos, mostrando el tipo de herramientas avanzadas que se están construyendo en torno a las inversiones. Fava también añadió características como una extensión de resumen de cartera (con cálculos de tasa de retorno). En cuanto a futuras funcionalidades, se puede esperar más en este dominio: posiblemente sugerencias automatizadas de reequilibrio de cartera o análisis de riesgo, probablemente como herramientas externas que lean los datos de Beancount (ya que todos los datos están ahí).

  • Nuevos Plugins y Extensiones: El ecosistema de plugins crece continuamente. Las adiciones notables recientes incluyen:

    • Herramientas de informes de presupuesto: por ejemplo, un generador de informes de presupuesto sencillo para la línea de comandos (CLI) si no se utiliza la interfaz de usuario de Fava.
    • Cifrado y seguridad: se introdujo la configuración de fava-encrypt, que permite alojar Fava en línea con el libro contable cifrado en reposo, abordando la preocupación de alojar tus propias finanzas.
    • Plugins de calidad de vida: como autobean-format (un nuevo formateador que puede manejar más casos extremos analizando y volviendo a imprimir el archivo) e integración de beancheck en editores (flymake para Emacs).

    Mirando hacia adelante, es probable que la comunidad continúe llenando vacíos mediante plugins. Por ejemplo, podríamos ver más plugins relacionados con impuestos (algunos usuarios han compartido scripts para cosas como computar “wash sales” o informes fiscales locales específicos).

  • Posibles Próximas Funcionalidades: Basado en las discusiones en el rastreador de problemas y la lista de correo, algunas ideas están en el horizonte (aunque no están garantizadas):

    • Resolución Temporal: Actualmente, Beancount solo registra fechas (sin marcas de tiempo) para las transacciones. Ha habido preguntas sobre añadir la hora (para operaciones bursátiles o el orden de transacciones el mismo día). Martin Blais decidió explícitamente que las marcas de tiempo intradía estaban fuera del alcance para mantener la simplicidad. Es poco probable que esto cambie pronto, por lo que las próximas versiones probablemente no añadirán resolución temporal, manteniendo la postura de que si necesitas la hora, debes incorporarla en la narración o en una cuenta.
    • Edición GUI Mejorada: Fava mejora continuamente sus capacidades de edición. Una posibilidad es un editor web con más funciones (con sugerencias automáticas, quizás una entrada basada en formularios para nuevas transacciones). Se sentaron las bases utilizando tree-sitter en el editor de Fava. Podríamos ver que Fava se convierta no solo en un visor, sino en un editor más potente, reduciendo la necesidad de abrir un editor de texto para muchas tareas.
    • Mejor soporte para múltiples libros contables: Algunos usuarios mantienen múltiples archivos de Beancount (para diferentes entidades o para separar lo personal de lo profesional). Actualmente, incluir archivos es posible pero tenía limitaciones (plugins en archivos incluidos, etc.). Se creó un plugin reciente autobean.include para incluir libros contables externos de forma segura. En el futuro, podríamos ver un soporte nativo de primer nivel para configuraciones multi-archivo; quizás un concepto de “proyecto” de Beancount con múltiples archivos (esto se insinúa en características como la configuración beancount.mainBeanFile de la extensión de VSCode). Esto ayudaría a quienes llevan la contabilidad de múltiples entidades o desean modularizar su libro contable.
    • Computación en Tiempo Real o Incremental: A medida que los libros contables crecen, la capacidad de volver a calcular informes rápidamente se vuelve importante. Existe la idea de un servidor Beancount que permanezca en ejecución y actualice los resultados a medida que cambian las transacciones. Esto podría manifestarse como una optimización en Fava o un demonio (daemon) al que los plugins del editor puedan consultar. Quizás una futura versión de Fava aproveche un proceso de Beancount en ejecución continua para hacer que la interfaz de usuario sea más receptiva para libros contables enormes.
    • Contabilidad de Fondos / Características para organizaciones sin fines de lucro: Hubo una propuesta de mejora sobre la contabilidad de fondos en Beancount. Las organizaciones sin fines de lucro tienen necesidades contables (fondos restringidos frente a no restringidos) que podrían modelarse potencialmente con la jerarquía de etiquetas o cuentas de Beancount. La discusión aún no ha dado lugar a funciones integradas, pero si más organizaciones sin fines de lucro adoptan Beancount, esto podría impulsar nuevas capacidades (quizás solo mejores prácticas documentadas o plugins para el seguimiento del saldo de fondos).
  • Perspectiva a Largo Plazo: Martin Blais insinuó que ve el futuro de Beancount convirtiendo el núcleo más en un motor y moviendo más funcionalidad a los plugins. Esto es consistente con lo que vemos (modularización en la v3). Por lo tanto, una “próxima funcionalidad” en términos filosóficos es una mayor extensibilidad, posiblemente permitiendo incluso que los plugins definan nuevos tipos de directivas o extiendan la sintaxis de formas controladas. Si eso sucede, el núcleo de Beancount podría permanecer relativamente pequeño y estable, mientras que el ecosistema ofrece la mayoría de las nuevas funcionalidades como complementos. Esto podría llevar a un mercado de plugins o a un listado más centralizado para que los usuarios puedan elegir (la lista Awesome Beancount es un comienzo en esa dirección).

En conclusión, el ecosistema de Beancount en 2025 está activo y en evolución. El lanzamiento de Beancount 3.0 fue un evento reciente importante, asegurando que la base del proyecto sea sólida para el futuro. Las mejoras en el rendimiento, las herramientas y la usabilidad (especialmente a través de Fava) han seguido bajando la barrera de entrada. Aunque Beancount sigue siendo una herramienta que requiere cierta experiencia, es mucho más accesible ahora que hace unos años, gracias a estos desarrollos. Las próximas funcionalidades probablemente se centrarán en refinar la experiencia —rendimiento más rápido, mejores integraciones y extensiones especializadas— en lugar de cambios drásticos en la filosofía central. La trayectoria de la comunidad sugiere que Beancount continuará madurando como la pieza central de la contabilidad en texto plano, logrando un equilibrio entre el poder austero de la contabilidad por partida doble y la conveniencia del software moderno. Como bromeó un usuario en Hacker News, la contabilidad en texto plano te da “superpoderes” para entender tus finanzas, y las mejoras recientes y futuras de Beancount tienen como objetivo hacer que esos superpoderes sean más fáciles de ejercer para todos.

Fuentes: Documentación y repositorio de Beancount; documentación de Fava; “A Comparison of Beancount and Ledger” por Martin Blais; lista de recursos Awesome Beancount; experiencias de usuarios e informes de la comunidad;

Mejorando tu Experiencia Beancount con Enlaces y Consultas Personalizadas

· 4 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

Beancount, el sistema de contabilidad de partida doble amado por desarrolladores y entusiastas de las finanzas por igual, es potente en su simplicidad. Pero para aquellos que desean más control y una navegación más rápida dentro de Fava, la interfaz web de Beancount, los enlaces personalizados en la barra lateral y las consultas SQL pueden llevar tu flujo de trabajo al siguiente nivel.

En esta guía, te mostraremos cómo:

  • Añadir enlaces de acceso rápido a la barra lateral de Fava
  • Usar consultas SQL para un filtrado y análisis avanzados
  • Personalizar tu flujo de trabajo para revisiones mensuales o detección de anomalías

¿Por qué personalizar Fava?

Fava ya es una hermosa interfaz para ver tu libro mayor de Beancount, pero a medida que tu diario crece, también lo hace la necesidad de mejores atajos y consultas más inteligentes.

Problemas que esto resuelve:

  • Navegar repetidamente por rangos de tiempo
  • Filtrar transacciones a través de cuentas anidadas
  • Detectar saldos negativos o anomalías más rápidamente

✨ Enlaces personalizados en la barra lateral

Comencemos mejorando tu flujo de trabajo diario con atajos simples en la barra lateral. Estos enlaces aparecen en la barra lateral izquierda de Fava y pueden llevarte directamente a vistas filtradas, como las transacciones de este mes o los ingresos del mes pasado.

Añade estas líneas a tu archivo Beancount:

2021-01-01 custom "fava-sidebar-link" "Current Month" "/jump?time=month"
2021-01-01 custom "fava-sidebar-link" "Last Month" "/jump?time=month-1"
2021-01-01 custom "fava-sidebar-link" "Clear All" "/jump?account=&time=&filter="

Qué hacen:

  • Mes Actual: Abre la vista de transacciones filtrada al mes actual.
  • Mes Pasado: Salta instantáneamente al mes anterior, ideal para revisiones de fin de mes.
  • Borrar Todo: Restablece los filtros, mostrando todas las entradas de nuevo.

Estos atajos eliminan la entrada manual de tiempo y hacen que tu experiencia con Fava sea más fluida y personalizada.

🔍 Consultas SQL personalizadas

Para una visión más profunda, la interfaz SQL de Fava es increíblemente potente. Aquí tienes una consulta que encuentra todos los saldos negativos en cuentas que coinciden con un patrón, perfecta para señalar transacciones inusuales o problemáticas.

SELECT account, units(sum(position)), sum(position)
WHERE number(units(position)) < 0
AND account ~ '.*:BCM:.*'
AND date >= DATE(2021,12,9)
AND date < DATE(2022,1,9)

Desglose:

  • account ~ '.*:BCM:.*': Filtra las cuentas que contienen :BCM: en su nombre.
  • number(units(position)) < 0: Señala saldos negativos (por ejemplo, presupuestos excedidos).
  • Los filtros de fecha reducen el resultado a una ventana específica de 1 mes.

Casos de uso:

  • Detectar errores como gastos duplicados o asientos incorrectos
  • Auditar un proveedor o categoría específica
  • Extraer rápidamente información útil para la elaboración de presupuestos

🛠 Consejo Pro: Combina Enlaces + Consultas

Aunque Fava no permite enlaces directos a consultas personalizadas, puedes crear un hábito de revisión mensual:

  • Usando el enlace "Mes Actual" para iniciar tu revisión
  • Abriendo tu pestaña de consultas guardadas en otro panel
  • Revisando ambos simultáneamente: primero filtra, luego profundiza

Esta combinación te ayuda a detectar anomalías antes de que se salgan de control y a asegurarte de que tu libro mayor se mantenga limpio.

Reflexiones Finales

Beancount es minimalista por diseño, pero pequeñas mejoras como estas aportan enormes ganancias en eficiencia. Ya sea que estés revisando tu presupuesto, depurando saldos extraños o simplemente ahorrando clics, los enlaces personalizados y las consultas SQL te brindan más poder y menos fricción.

Extra: Si estás utilizando los informes personalizados de Fava, incluso puedes construir paneles completos adaptados a tus rituales de finanzas personales.

¿Listo para tomar el control?

Empieza poco a poco: añade el enlace "Mes Actual". Luego, construye tus propias consultas. Tu yo futuro te lo agradecerá.

¿Quieres más consejos como este? Suscríbete a nuestro boletín o explora más recetas de Beancount en Beancount.io.

Actualización de Fava a la Versión 1.19: Cambios y Mejoras Clave

· Un minuto de lectura
Mike Thrift
Mike Thrift
Marketing Manager

Hemos actualizado el software de código abierto Fava, con licencia MIT, a la versión 1.19. Aquí están los cambios desde nuestra última actualización:

  • v1.19 (18-05-2021)
    • migración de las opciones conversion e interval a la opción default-page
    • añade la opción invert-income-liabilities-equity
    • actualización a CodeMirror 6
    • añade una traducción al búlgaro
    • otras pequeñas mejoras y correcciones de errores
  • v1.18 (16-01-2021)
    • un par de pequeñas mejoras y varias correcciones de errores.

¿Te sientes emocionado? Pruébalo ahora en https://beancount.io/ledger/

2021-07-16-actualizacion-fava-a-1-19

¿Tienes preguntas? Estaremos allí para ti en https://t.me/beancount :)

Comprendiendo la Amortización en Beancount

· 2 min de lectura
Mike Thrift
Mike Thrift
Marketing Manager

La amortización distribuye los pagos en varias cuotas a lo largo del tiempo. En beancount.io, puede usar el plugin fava.plugins.amortize_over para lograrlo.

2021-01-09-amortize

Sin amortización, si desea asegurar su coche por 6 meses con un costo de $600. Tendrá que registrar esto como un gasto único para una fecha específica.

2017-06-01 open Assets:Bank:Checking
2017-06-01 open Assets:Prepaid-Expenses
2017-06-01 open Expenses:Insurance:Auto


2017-06-01 * "Pay car insurance"
Assets:Bank:Checking -600.00 USD
Assets:Prepaid-Expenses

Sin embargo, con la amortización, podría asignar el gasto a lo largo de seis meses colocando plugin "fava.plugins.amortize_over" al principio del archivo y usando amortize_months: 6 para la transacción.

plugin "fava.plugins.amortize_over"

2020-06-01 open Assets:Bank:Checking
2020-06-01 open Assets:Prepaid-Expenses
2020-06-01 open Expenses:Insurance:Auto

2020-06-01 * "Amortize car insurance over six months"
amortize_months: 6
Assets:Prepaid-Expenses -600.00 USD
Expenses:Insurance:Auto

Y luego, en el Diario, verá que la transacción se divide en 6 asientos.

2020-11-01 * Amortize car insurance over six months (6/6) am
2020-10-01 * Amortize car insurance over six months (5/6) am
2020-09-01 * Amortize car insurance over six months (4/6) am
2020-08-01 * Amortize car insurance over six months (3/6) am
2020-07-01 * Amortize car insurance over six months (2/6) am
2020-06-01 * Amortize car insurance over six months (1/6) am

Captura de pantalla de transacción de amortización

Mejoras en Beancount.io: Actualizaciones de Rendimiento y Seguridad

· Un minuto de lectura
Mike Thrift
Mike Thrift
Marketing Manager

Mantener un servicio en línea seguro y de alto rendimiento nunca es algo puntual. Requiere esfuerzo no solo para desarrollar nuevas funcionalidades, sino también para renovar las existentes.

El software obsoleto expone a nuestros clientes a riesgos de vulnerabilidades de seguridad. ¿Cómo reducimos este riesgo? Por un lado, trabajamos proactivamente con investigadores de seguridad para encontrar y resolver problemas inesperados. Por otro lado, fusionamos periódicamente la última versión del software de origen.

Hoy nos complace compartir algunas mejoras que hemos realizado en Beancount.io.

2021-01-07-upgrade-fava-to-1-17

  1. Hemos actualizado el servidor y acelerado el servicio hasta en un 30%. La disponibilidad del servicio también ha mejorado considerablemente.
  2. Hemos actualizado el software de código abierto con licencia MIT Fava a la versión 1.17. Se corrigieron varios errores y se añadieron muchas características nuevas.

¿Te sientes emocionado? Pruébalo ahora en https://beancount.io/ledger/

¿Tienes preguntas? Estaremos ahí para ayudarte en https://t.me/beancount :)