Saltar al contenido principal

Tutorial de Beancount: instalación y primer libro mayor

Instala Beancount, crea tu primer archivo de libro mayor, configura cuentas y opciones, luego valida: un recorrido de primer éxito.

¿Listo para tomar el control de tus finanzas? Esta guía te pondrá en marcha con Beancount en minutos. Aprenderás a crear tu primer libro mayor, configurar cuentas esenciales y registrar tus primeras transacciones.

Vista del diario de beancount.io que muestra transacciones de partida doble en texto plano con filtros de tipo de directiva

Explora el libro mayor en vivo →

Configuración Inicial​

Creando Tu Primer Libro Mayor​

; Basic structure for a new ledger
2024-01-01 open Assets:Checking
2024-01-01 open Equity:Opening-Balances
 
2024-01-02 * "Initial Deposit"
  Assets:Checking           100.00 USD
  Equity:Opening-Balances

Configuración Esencial​

option "title" "Personal Finance Ledger"
option "operating_currency" "USD"

Organización de Archivos​

Estructura Recomendada​

; 1. Configuration Options
option "title" "Personal Ledger"
option "operating_currency" "USD"
 
; 2. Account Declarations
2024-01-01 open Assets:Checking    USD
2024-01-01 open Assets:Savings     USD
2024-01-01 open Expenses:Food      USD
2024-01-01 open Equity:Opening-Balances
 
; 3. Initial Balances
; Pad fills the gap up to Equity:Opening-Balances, so it must be dated
; before the assertion. Balance assertions are checked at the start of
; their day, so assert the next morning.
2024-01-01 pad Assets:Checking Equity:Opening-Balances
2024-01-02 balance Assets:Checking 1000.00 USD
 
; 4. Transactions
2024-01-15 * "Grocery Store" "Weekly groceries"
  Expenses:Food            50.00 USD
  Assets:Checking

Organización por Secciones​

  1. Cuentas Eternas

    2024-01-01 open Liabilities:Payables    USD
    2024-01-01 open Assets:Receivables      USD
  2. Cuentas Bancarias

    2024-01-01 open Assets:Bank:Checking     USD
    2024-01-01 open Assets:Bank:Savings      USD
    2024-01-01 open Income:Bank:Interest     USD
  3. Cuentas de Inversión

    2024-01-01 open Assets:Investment:Cash    USD
    2024-01-01 open Assets:Investment:Stocks  VTSAX
    2024-01-01 open Income:Investment:Dividend USD

Validación e Informes​

Validación Básica​

# Check for errors (exits 0 when clean)
bea --file ledger.beancount check
 
# Browse balances, reports, and charts in the web interface
fava ledger.beancount

bea check es el validador: sale con código 0 cuando el libro mayor está limpio, y lista cada error y sale con código distinto de cero en caso contrario. Instálalo con el inicio rápido de CLI. Fava es la interfaz web: ejecútala y abre la dirección http://localhost:5000 que se imprime para ver el balance general, el estado de resultados y los diarios de cuentas.

Informes Comunes​

Beancount 3 produce informes a través de la interfaz web de Fava, el comando único bea report, o consultas ad hoc con bea query, que ejecuta el Lenguaje de Consulta de Beancount. Beancount 3 eliminó sus comandos antiguos de informes y web; bea report y Fava los reemplazan.

# Balance sheet, in one command
bea --file ledger.beancount report balance-sheet
 
# Income statement, in one command
bea --file ledger.beancount report income-statement
 
# Balance-sheet numbers: balances by asset, liability, and equity account
bea --file ledger.beancount query "SELECT account, sum(position) AS balance WHERE account ~ '^(Assets|Liabilities|Equity)' GROUP BY account ORDER BY account"
 
# Income-statement numbers: totals by income and expense account
bea --file ledger.beancount query "SELECT account, sum(position) AS total WHERE account ~ '^(Income|Expenses)' GROUP BY account ORDER BY account"
 
# One account's journal, with a running balance
bea --file ledger.beancount query "SELECT date, narration, position, balance WHERE account = 'Assets:Checking'"

Gestión de Saldos Iniciales​

Ejemplo de Relleno (Pad)​

2024-01-01 open Assets:Checking    USD
2024-01-01 open Equity:Opening-Balances
 
; Pad account to match a known balance
2024-01-01 pad Assets:Checking Equity:Opening-Balances
 
; Assert the known balance the next day: assertions are evaluated at the
; start of their date, and the pad transaction must fall before it
2024-01-02 balance Assets:Checking 1525.00 USD

Una verificación de balance comprueba la cuenta al inicio de su fecha, por lo que debe estar fechada después del pad (o cualquier transacción) que debe incluir. Fechar el pad y el balance el mismo día deja el pad sin usar y la verificación corta — Beancount reporta Entrada de Pad sin usar y Verificación de Balance fallida. La cuenta Equity:Opening-Balances debe abrirse antes de que se use como contrapartida de un pad.

Cierre de Cuentas​

2024-01-01 open Assets:OldBank:Checking   USD
2024-06-30 close Assets:OldBank:Checking  ; Account closed

Deduplicación de Transacciones​

Manejo de Transferencias​

; Credit card payment - combined view
2024-01-15 * "Credit Card Payment"
  Assets:Checking            -500.00 USD
  Liabilities:CreditCard     500.00 USD
 
; Flag for pending match
2024-01-15 * "Pending CC Payment"
  ! Assets:Checking         -500.00 USD
  Liabilities:CreditCard    500.00 USD

Verificaciones de Balance​

; Regular balance checks prevent duplicates
2024-01-31 balance Assets:Checking    2150.25 USD
2024-01-31 balance Liabilities:CreditCard  -350.00 USD

Mejores Prácticas​

  1. Organización de Archivos

    • Mantén un archivo principal al principio
    • Usa encabezados de sección claros
    • Agrupa cuentas relacionadas
  2. Nombres de Cuentas

    • Usa convenciones de nombres consistentes
    • Incluye prefijos de país/institución
    • Mantén una jerarquía lógica
  3. Verificación de Saldos

    • Verificaciones de balance regulares
    • Rellena cuentas adecuadamente
    • Realiza un seguimiento de los cierres de cuentas
  4. Manejo de Monedas

    • Declara monedas operativas
    • Usa códigos de commodity consistentes
    • Especifica restricciones de moneda

Próximos Pasos​

Ahora que tienes un libro mayor básico configurado:

  1. Registra Transacciones Regulares: Comienza con tus gastos e ingresos diarios
  2. Configura Importaciones de Cuentas Bancarias: Usa importaciones CSV o conexiones bancarias para automatizar la entrada de datos. Pega una exportación de estado de cuenta en el convertidor de CSV a Beancount para obtener entradas balanceadas en tu navegador, o usa OFX y QIF a Beancount para descargas .ofx, .qfx y .qif.
  3. Copia un Diseño Probado: Descarga un archivo inicial ejecutable de las secciones hogar, presupuesto por sobres, o freelance de los ejemplos de libros mayores funcionales, y luego adapta los patrones de propiedades e inversiones de la misma galería
  4. Aprende Sintaxis Avanzada: Explora la referencia de sintaxis para escenarios más complejos
  5. Genera Tus Primeros Informes: Usa las funciones de la interfaz para crear informes financieros y analizar tus gastos
  6. Trabaja desde la Terminal: Instala la línea de comandos bea con el inicio rápido de CLI, y luego cierra un mes completo de principio a fin en Tu primer mes con bea

Referencia Rápida​

Tipos de Cuentas Comunes:

  • Assets:Bank:Checking - Tu cuenta corriente
  • Expenses:Food:Groceries - Gasto en comestibles
  • Income:Salary:Company - Ingresos por empleo
  • Liabilities:CreditCard:Visa - Deuda de tarjeta de crédito

Comandos Esenciales:

  • bea --file ledger.beancount check - Valida tu libro mayor (sale con código distinto de cero en caso de errores)
  • bea --file ledger.beancount report balance-sheet - Imprime un balance general
  • bea --file ledger.beancount query "SELECT ..." - Consulta saldos y transacciones
  • fava ledger.beancount - Inicia la interfaz web para informes y gráficos

Estas pautas establecen una base sólida para gestionar finanzas personales con Beancount. ¿Listo para añadir tu primera transacción? Consulta nuestra guía de transacciones en la interfaz.

Fuente: https://beancount.io/es/docs/Basics/getting-started