Saltar al contenido principal

Sintaxis del Lenguaje Beancount

Esto proporciona una referencia concisa pero completa para la sintaxis del lenguaje Beancount, combinando estructura práctica, reglas y ejemplos. Para obtener más detalles, consulte la Hoja de referencia.

Resumen

Beancount es un sistema de contabilidad de doble entrada en texto plano. Su lenguaje está estructurado en torno a tres bloques de construcción principales:

  • Commodities (monedas, acciones, puntos, etc.)
  • Accounts (cuentas jerárquicas, libros de contabilidad categorizados)
  • Directives (entradas fechadas que registran eventos o configuración)

Commodities

Los commodities siempre se escriben en mayúsculas, por ejemplo, USD, EUR, AAPL, BTC, MILES, HOURS.

Accounts

Las cuentas son nombres jerárquicos separados por dos puntos, en mayúsculas. Deben comenzar con uno de los cinco tipos de cuenta raíz:

NameTypeTypical ContentsExample
Assets+Efectivo, Banco, InversionesAssets:Checking
Liabilities-Tarjetas de Crédito, PréstamosLiabilities:CreditCard
Income-Salario, InteresesIncome:EmployerA
Expenses+Compras, FacturasExpenses:Food:Dining
Equity-Saldos de Apertura/CierreEquity:Opening-Balances
  • Los componentes deben estar en mayúsculas, separados por dos puntos (:), sin espacios.
  • Se permiten números y guiones en los componentes.
  • Los nombres de las cuentas raíz se pueden personalizar a través de opciones (ver más abajo).

Directives

Las directivas son las declaraciones centrales en un archivo Beancount. La mayoría comienzan con una fecha, seguida de un tipo de directiva y argumentos. Se procesan en orden cronológico (por fecha), no en el orden del archivo.

Formato general:

YYYY-MM-DD <directive> <argumentos...>

Directivas Comunes y Ejemplos

Apertura y Cierre de Cuentas

2023-01-01 open Assets:Checking USD,EUR  ; Opcionalmente, especifique las monedas permitidas
2023-12-31 close Assets:Checking

Declaración de Commodities

2020-07-22 commodity AAPL
name: "Apple Inc."

Declaraciones de Precios

2022-04-30 price AAPL 150.00 USD

Notas y Documentos

2022-03-20 note Assets:Checking "Pregunté sobre el reembolso"
2022-03-20 document Assets:Checking "statements/2022-03.pdf"

Transacciones

2024-01-05 * "Coffee Shop" "Café de la mañana"
Expenses:Food 4.50 USD
Assets:Cash -4.50 USD

2024-01-06 ! "Phone Bill" "Pago mensual" #utilities ^phone
id: "INV12345" ; Metadata
Expenses:Utilities 60.00 USD
Assets:Checking

Funciones de Asiento

; Con base de costo
Assets:Stocks 1 AAPL {150.00 USD}
; Con anotación de precio
Assets:Cash -100 USD @ 1.25 CAD
; Con precio total
Assets:Cash -100 USD @@ 125.00 CAD
; Balance implícito
Assets:Cash -100 USD
Assets:Bank

Aserciones de Saldo y Relleno

2024-06-01 balance Assets:Checking 1000.00 USD
2024-06-01 pad Assets:Checking Equity:Opening-Balances

Eventos

2024-06-01 event "location" "San Francisco, CA"

Options

Establecer la configuración de todo el archivo:

option "title" "Mi Libro Mayor"
option "operating_currency" "USD"
option "documents" "docs/"
option "name_assets" "Vermoegen"

Consulte la Referencia de Opciones para obtener más información.

Plugins y Organización de Archivos

plugin "beancount.plugins.module_name"
plugin "beancount.plugins.module_name" "config-string"
include "other/file.beancount"
pushtag #project
; ...
poptag #project

Reglas Importantes

  • Todas las transacciones deben balancearse (la suma de todos los asientos es cero; se utiliza la base de costo si está presente).
  • Las cuentas deben abrirse antes de su uso; las cuentas cerradas no pueden aceptar asientos.
  • Las aserciones de saldo verifican solo la moneda especificada y se pueden usar en cuentas principales.
  • Las anotaciones de precio (@) son informativas y no afectan el balance.

Patrones Comunes

Apertura de Cuentas con Saldo Inicial

2024-01-01 open Assets:Checking USD
2024-01-01 pad Assets:Checking Equity:Opening-Balances
2024-01-01 balance Assets:Checking 1000.00 USD

Transacción de Inversión

2024-01-01 * "Comprar acciones"
Assets:Broker:Stock 10 AAPL {150.00 USD}
Assets:Broker:Cash -1500.00 USD

Transacción Multi-Moneda

2024-01-01 * "Cambio de moneda"
Assets:USD -100.00 USD @ 1.25 CAD
Assets:CAD 125.00 CAD

Comentarios

poptag  #trip-to-peru
; los comentarios en línea comienzan con un punto y coma
* cualquier línea que no comience con una directiva válida también se ignora silenciosamente