Salta al contingut principal

Beancount vs hledger: Quina eina de comptabilitat en text pla és la millor per a tu?

· 10 minuts de lectura
Mike Thrift
Mike Thrift
Marketing Manager

Si has decidit gestionar les teves finances amb comptabilitat en text pla, ja has pres una decisió intel·ligent. Les teves dades financeres viuran en fitxers llegibles per humans que controles totalment, seguits amb control de versions i lliures de la dependència d'un proveïdor. Però ara ve la següent pregunta: quina eina hauries d'utilitzar?

Beancount i hledger són les dues eines de comptabilitat en text pla (PTA) més populars actualment. Totes dues són de codi obert, es mantenen activament i són capaces de gestionar-ho tot, des de pressupostos personals fins a carteres d'inversió complexes. No obstant això, adopten enfocaments fonamentalment diferents sobre com enregistrar, validar i analitzar les dades financeres.

2026-03-17-beancount-vs-hledger-comparison-plain-text-accounting

Aquesta guia detalla les diferències clau perquè puguis triar la que millor s'adapti al teu flux de treball, nivell d'experiència i necessitats de seguiment financer.

La filosofia central: Estricte vs. Flexible

La diferència més gran entre Beancount i hledger no és una funcionalitat, sinó una mentalitat.

Beancount és el mestre estricte. Assumeix que cometràs errors en l'entrada de dades i incorpora proteccions per detectar-los d'hora. Cada compte s'ha d'obrir explícitament abans d'utilitzar-lo. Cada transacció ha de quadrar a zero. Les monedes han de seguir un format rígid. Si alguna cosa no sembla correcta, Beancount es negarà a processar el fitxer fins que ho arreglis.

hledger és l'amic indulgent. Utilitza una sintaxi més relaxada, et permet saltar-te la declaració prèvia de comptes i fins i tot pot inferir les entrades de quadratura. Pots començar a fer el seguiment de les finances amb una configuració mínima i anar afegint estructura a mesura que les teves necessitats creixin.

Cap dels dos enfocaments és objectivament millor. Si valores detectar errors abans que es converteixin en hores de depuració, l'estrictesa de Beancount és un avantatge. Si vols començar ràpidament i prefereixes la flexibilitat, la permissivitat de hledger és un benefici.

Sintaxi i format de dades

Totes dues eines emmagatzemen les transaccions en fitxers de text pla, però les regles de sintaxi difereixen significativament.

Sintaxi de Beancount

2026-03-15 * "Whole Foods" "Compra setmanal"
Expenses:Food:Groceries 85.42 USD
Liabilities:CreditCard:Visa

Regles clau:

  • Les dates utilitzen el format ISO 8601 (AAAA-MM-DD)
  • Les monedes han de ser lletres en majúscules (ex. USD, EUR)—sense símbols com $ o
  • Els noms dels comptes requereixen almenys dos components separats per dos punts (ex. Expenses:Food)
  • Les descripcions han de ser cadenes entre cometes
  • Tots els comptes s'han d'obrir explícitament amb una directiva open

Sintaxi de hledger

2026-03-15 Whole Foods | Compra setmanal
expenses:food:groceries $85.42
liabilities:creditcard:visa

Regles clau:

  • Formats de data més flexibles
  • Es permeten símbols de moneda com $ i
  • Els noms dels comptes poden estar en minúscules i ser més lliures
  • Les descripcions no necessiten cometes
  • No cal declarar prèviament els comptes

La conclusió: la sintaxi més estricta de Beancount significa més feina inicial però menys ambigüitats. La sintaxi relaxada de hledger és més fàcil d'iniciar però requereix més disciplina per mantenir la consistència.

Integritat i validació de dades

Aquí és on Beancount realment es diferencia.

Assercions de saldo

Totes dues eines admeten assercions de saldo (declaracions que verifiquen que el saldo registrat coincideix amb el teu extracte bancari). Però funcionen de manera diferent.

Beancount utilitza assercions de saldo amb data que són independents de l'ordre. Pots reordenar els teus fitxers de transaccions com vulguis i les assercions continuaran funcionant correctament. Les assercions de hledger depenen de l'ordre del fitxer, cosa que significa que moure les transaccions pot fer que fallin.

Seguiment d'inventari

Per a qualsevol persona que faci un seguiment d'inversions, això és molt important. Beancount imposa un registre d'inventari estricte: no pots vendre accions que mai vas comprar, i fa un seguiment de la base de cost amb precisió. Això evita la "fuga de la base de cost", un error subtil on els teus càlculs de guanys de capital es desvien de la realitat.

hledger gestiona mercaderies i lots però amb menys imposició. És més flexible, la qual cosa significa que també és més indulgent amb els errors que podrien passar desapercebuts fins a l'hora dels impostos.

Categories de comptes

Beancount requereix que cada compte pertanyi a una de les cinc categories: Assets (Actius), Liabilities (Passius), Income (Ingressos), Expenses (Despeses) o Equity (Patrimoni net). Aquesta restricció li permet generar automàticament balanços de situació i estats de resultats adequats.

hledger permet jerarquies de comptes arbitràries sense categories arrel obligatòries. Això et dóna més llibertat, però significa que has de seguir les convencions manualment per obtenir informes financers significatius.

Interfície d'usuari i informes

Beancount + Fava

La característica destacada de Beancount és Fava, una interfície web polida que proporciona:

  • Gràfics i diagrames interactius (tendències del patrimoni net, desglossament de despeses, ingressos vs. despeses)
  • Visualitzacions de tipus treemap per a les categories de despeses
  • Potents filtres per compte, etiqueta, període de temps i beneficiari
  • Un llenguatge de consulta per a informes personalitzats
  • Un editor integrat per als teus fitxers ledger

Fava és àmpliament considerada la millor interfície d'usuari en l'ecosistema de la comptabilitat en text pla. Si ets una persona visual que vol taulers de control i gràfics, aquest és un gran punt a favor de Beancount.

Interfícies de hledger

hledger adopta un enfocament de múltiples interfícies:

  • CLI: Informes rics des de la línia de comandes amb dotzenes d'ordres integrades (balance, register, incomestatement, cashflow i més)
  • hledger-ui: Una interfície basada en terminal per explorar comptes i transaccions de manera interactiva
  • hledger-web: Una interfície web més senzilla per a l'exploració bàsica i l'entrada de dades

La CLI de hledger és més potent de sèrie que la de Beancount. Si viviu a la terminal i voleu informes ràpids i programables, hledger compleix amb escreix.

Rendiment

hledger està escrit en Haskell i processa aproximadament 25.000 transaccions per segon. Per a la majoria d'usuaris de finances personals, ambdues eines són efectivament instantànies. Però si gestioneu un conjunt de dades gran —anys de transaccions en múltiples entitats—, la velocitat bruta de hledger li dona un avantatge.

Beancount (v3) s'ha tornat a escriure en C++ per al motor d'anàlisi (parser) central, millorant significativament el rendiment respecte a la implementació original en Python. Per a un ús típic personal o de petita empresa, no notareu cap diferència.

Extensibilitat i Connectors

Connectors de Beancount

Beancount té un sistema de connectors (plugins) natiu de Python que és extraordinàriament potent. Els connectors poden:

  • Desglossar transaccions automàticament (per exemple, despeses compartides)
  • Generar transaccions recurrents
  • Aplicar regles de validació personalitzades
  • Transformar les dades en el flux de processament

L'ecosistema Python permet aprofitar qualsevol biblioteca d'aquest llenguatge en els vostres connectors. Això fa que Beancount sigui altament personalitzable per a escenaris financers complexos.

Extensions de hledger

hledger ofereix extensibilitat mitjançant:

  • Regles d'importació de CSV per a l'automatització d'extractes bancaris
  • Scripts d'informes personalitzats utilitzant la sortida de la CLI
  • Una API HTTP-JSON per construir integracions
  • Ordres addicionals basades en Haskell

El sistema d'importació CSV de hledger està especialment ben valorat: facilita l'automatització de les importacions d'extractes bancaris mitjançant fitxers de regles que assignen les columnes del CSV als apunts dels comptes.

Primers Passos i Corba d'Aprenentatge

hledger: Menor Barrera d'Entrada

hledger és generalment més fàcil de començar a utilitzar:

  • S'instal·la un únic binari (excel·lent suport multiplataforma, incloent-hi Windows)
  • Es pot crear un fitxer i començar a registrar transaccions immediatament
  • No cal declarar els comptes ni seguir convencions de nomenclatura estrictes
  • Documentació completa i ben mantinguda
  • Comunitat activa amb recursos per a principiants

Beancount: Més Configuració, Més Estructura

Beancount requereix més configuració inicial:

  • Cal instal·lar Python i Beancount (i Fava per a la interfície web)
  • Cal crear declaracions de comptes abans d'utilitzar-los
  • Cal seguir regles sintàctiques estrictes des del primer dia
  • Cal aprendre les cinc categories de comptes

La contrapartida és que aquesta inversió inicial dona els seus fruits. Un llibre major de Beancount ben estructurat és més fàcil de mantenir, validar i auditar a mesura que creix.

Comunitat i Ecosistema

Ambdós projectes tenen comunitats actives i col·laboratives:

  • Beancount: Llista de correu activa, ecosistema creixent d'eines de tercers (importadors, connectors, extensions de Fava) i una forta comunitat de desenvolupadors de Python
  • hledger: Versions freqüents (aproximadament trimestrals), documentació extensa, canals de xat actius i la comunitat més àmplia de plaintextaccounting.org

Ambdues eines es beneficien del moviment general de comptabilitat en text pla, cosa que significa recursos compartits, importadors i coneixement comunitari.

Migració Entre Eines

Si comenceu amb una eina i voleu canviar més tard, la migració és possible però no trivial:

  • De hledger a Beancount: Utilitzeu hledger print -o tmp.beancount com a punt de partida, i després ajusteu la sintaxi (afegiu declaracions de comptes, corregiu formats de moneda, reestructureu els noms dels comptes)
  • De Beancount a hledger: L'eina bean-report pot exportar les dades, tot i que normalment calen retocs manuals

La filosofia compartida del text pla significa que les vostres dades mai estan segrestades. Sempre podeu llegir i convertir els vostres fitxers, fins i tot si el procés requereix una mica de neteja manual.

Taula de Comparació Ràpida

CaracterísticaBeancounthledger
LlenguatgePython/C++Haskell
Rigor de la sintaxiEstricteFlexible
Declaració de comptesRequeridaOpcional
Millor interfícieFava (web)CLI + TUI
Seguiment d'inversionsExcel·lentBo
Sistema de connectorsConnectors PythonScripts + API
Importació de CSVVia importadorsRegles integrades
Corba d'aprenentatgeMés pronunciadaMés suau
Comprovacions de saldoIndependents de l'ordreDepenents de l'ordre del fitxer
RendimentRàpid (v3)Molt ràpid
Suport per a WindowsBoExcel·lent

Quina Heu de Triar?

Trieu Beancount si:

  • Voleu un tauler web atractiu per visualitzar les vostres finances
  • Feu un seguiment d'inversions i necessiteu una gestió precisa de la base de cost
  • Preferiu un sistema que detecti errors aviat i obligui a la coherència
  • Us sentiu còmodes amb Python i voleu connectors potents i extensibles
  • Valoreu una organització de fitxers independent de l'ordre

Trieu hledger si:

  • Preferiu treballar a la terminal amb informes ràpids i programables
  • Voleu començar ràpidament amb una configuració mínima
  • Necessiteu un suport excel·lent per a Windows
  • Preferiu una sintaxi flexible que s'adapti al vostre estil
  • Voleu actualitzacions freqüents i un manteniment actiu

La veritat sincera: ambdues eines són excel·lents. La comunitat de comptabilitat en text pla us donarà la benvinguda independentment de l'eina que feu servir, i les habilitats que aprengueu amb una es poden transferir fàcilment a l'altra. Trieu la que millor s'adapti al vostre flux de treball, proveu-la durant un mes i ajusteu-la si cal.

Simplifica el seguiment de les teves finances amb Beancount.io

Tant si tries Beancount com hledger, la comptabilitat en text pla et dona el control de les teves dades financeres. Si vols el poder de Beancount amb un tauler de control Fava allotjat, importacions bancàries automàtiques i zero gestió d'infraestructura, Beancount.io t'ho posa fàcil. Comença de franc i experimenta la comptabilitat en text pla sense la càrrega de la configuració.