Real-time financiële analyses met Fava en Beancount
Inleiding
Beancount is een open-source systeem voor dubbel boekhouden dat platte tekstbestanden als grootboek gebruikt. Het legt de nadruk op eenvoud, transparantie en flexibiliteit bij het bijhouden van financiën. Fava is een krachtige web-based front-end voor Beancount, die een interactieve interface biedt voor het bekijken van rapporten, visualisaties en het beheren van uw grootboek. In dit rapport verkennen we de kernmogelijkheden van Beancount en Fava, en hoe u real-time of bijna-real-time financiële analyses kunt bereiken met deze tools. We behandelen configuratietips voor automatisering en gegevensverversing, de visualisatiefuncties van Fava (voor direct inzicht in de cashflow en het spotten van trends), integratie met externe dashboards (Grafana, Metabase, enz.), voorbeelden van aangepaste dashboards en plug-ins, use cases in persoonlijke en mkb-financiën, vergelijkingen met andere platforms (Power BI, QuickBooks), en de voor- en nadelen van het gebruik van Fava+Beancount voor datagestuurde inzichten.
Kernmogelijkheden van Beancount en Fava
Beancount (De engine voor boekhouden in platte tekst)
- Grootboek met dubbel boekhouden in platte tekst: Beancount slaat transacties op in een enkel
.beancounttekstbestand (of meerdere bestanden die samen worden gevoegd). Elke transactie moet in evenwicht zijn (totaal debet = totaal credit) over de rekeningen, wat de integriteit van de boekhouding waarborgt. Het platte tekstformaat betekent dat uw gegevens leesbaar zijn voor mensen, versiebeheer-vriendelijk en niet gebonden aan een specifieke leverancier. - Flexibele, hiërarchische rekeningen: U kunt alle rekeningen (bijv.
Activa:Bank:Betaalrekening,Uitgaven:Voeding:Koffie) definiëren in een hiërarchie. Beancount is niet bevooroordeeld over uw rekeningschema, dus het werkt voor persoonlijke financiën, de boekhouding van kleine bedrijven, investeringen, enz. – het is “flexibel: werkt voor persoonlijke financiën, boekhouding voor kleine bedrijven, crypto, aandelenbeleggingen en meer.” - Meerdere valuta en grondstoffen: Beancount heeft eersteklas ondersteuning voor meerdere valuta en grondstoffen (bijv. aandelen, crypto). U kunt transacties in verschillende valuta vastleggen, wisselkoersen definiëren (prijs-directives) en de kostprijsbasis bijhouden. Het kan rapporten genereren “tegen kostprijs” of “tegen marktwaarde” als er prijsgegevens beschikbaar zijn. Dit maakt het geschikt voor portefeuilles en internationale financiën.
- Geautomatiseerde controles en balansen: Het systeem ondersteunt balanscontroles (waarbij u kunt verklaren wat het saldo van een rekening op een bepaalde datum zou moeten zijn, en Beancount geeft een foutmelding als dit niet overeenkomt) en balanstransacties voor het afsluiten van de boeken. Het ondersteunt ook openings- en slotboekingen voor eigen vermogen en de berekening van ingehouden winsten voor periodeafsluitingen. Dit helpt ervoor te zorgen dat uw boeken consistent blijven en fouten vroegtijdig worden opgespoord.
- Krachtige query- en rapportage-engine: Beancount wordt geleverd met een querytaal BQL (Beancount Query Language) en command-line tools zoals
bean-balance,bean-register, enbean-queryom rapporten te genereren. U kunt het grootboek bevragen voor aangepaste rapporten (bijv. een lijst van uitgaven per begunstigde, cashflow voor een periode) – waarbij u het grootboek in feite als een database behandelt. Het is snel, zelfs met duizenden transacties, en kan exporteren naar CSV of zelfs direct naar Excel/LibreOffice (met optionele add-ons). - Uitbreidbaarheid via plug-ins: Beancount is geschreven in Python en staat aangepaste plug-ins toe om de functionaliteit uit te breiden. Plug-ins kunnen aanvullende regels of berekeningen afdwingen wanneer het bestand wordt verwerkt. (Er zijn bijvoorbeeld plug-ins voor het afhandelen van belastingbatches, of om ervoor te zorgen dat er geen aankoop zonder kostprijs is.) Het plug-insysteem en de Python API laten gevorderde gebruikers aangepast gedrag scripten of Beancount integreren met andere systemen.
- Importers voor externe gegevens: Een belangrijk praktisch kenmerk is het ingest-framework van Beancount voor het importeren van gegevens (bijv. van bankafschriften). U kunt importer-plug-ins schrijven of gebruiken die CSV-, OFX-, PDF-afschriften enz. parsen en deze omzetten in Beancount-boekingen. Dit is essentieel voor automatisering (hierover later meer).
- Controleerbaar en versiebeheer-vriendelijk: Omdat het platte tekst is, kunt u uw grootboek in Git of ander versiebeheer bewaren. Elke wijziging is transparant en u heeft een volledige geschiedenis van bewerkingen. Dit maakt audits of het beoordelen van wijzigingen eenvoudig (veel gebruikers committen de wijzigingen van elke dag naar een Git-repo, wat een fraudebestendig logboek van alle financiële boekingen oplevert). Dit niveau van transparantie is een belangrijk onderscheidend kenmerk ten opzichte van gesloten boekhoudsoftware – “geen SaaS lock-in — gewoon schone, transparante boekhouding met krachtige rapportage.”
Fava (Webinterface voor Beancount)
- Interactieve web-UI: Fava biedt een lokale webserver die uw Beancount-grootboek rendert in een rijke UI. Het toont kernrapporten (resultatenrekening, balans, enz.), rekeningregisters en journaals in de browser met interactieve bedieningselementen. De UI is dynamisch en gebruiksvriendelijk vergeleken met de command-line. U start het met een simpel
fava uwbestand.beancounten krijgt een web-app voor uw boekhouding. - Ingebouwde grafieken en diagrammen: Fava genereert grafieken om uw gegevens te helpen visualiseren. Het bevat bijvoorbeeld een lijngrafiek voor de nettowaarde in de loop van de tijd, staafdiagrammen voor inkomsten versus uitgaven per maand, en cirkel-/treemap-diagrammen voor de uitsplitsing van uitgaven. Deze visuals worden bijgewerkt met uw gegevens en ondersteunen verschillende weergaven (bijv. “tegen kostprijs” vs “marktwaarde” voor investeringen). We zullen deze visualisatiemogelijkheden later in detail verkennen.
- Filteren en zoeken: Bovenaan de pagina's van Fava kunt u met een filterbalk uw gegevens in real-time filteren. U kunt filteren op tijd (bijv. jaar, kwartaal, maand), op rekening-regex, op begunstigde, op omschrijving of op tags/links. Dit maakt het eenvoudig om real-time gegevensinspecties uit te voeren – filter bijvoorbeeld snel op “Tag=Travel” en “Year=2025” om alle reiskosten in 2025 te zien, inclusief totalen. De interface ondersteunt complexe zoekopdrachten via deze filterbalk of via de Query-pagina (waar u direct BQL-queries kunt uitvoeren).
- Ondersteuning voor meerdere bestanden en consolidatie: Fava kan meerdere Beancount-bestanden tegelijk laden (handig als u gescheiden grootboeken heeft) en daartussen schakelen. Het kan deze ook consolideren indien nodig (bijvoorbeeld persoonlijke en zakelijke grootboeken samen bekeken).
- Gegevensinvoer en bewerking: Uniek is dat Fava niet alleen-lezen is – het heeft een editor en een formulier voor het invoeren van transacties. U kunt nieuwe transacties toevoegen via een webformulier (het voegt de boeking toe aan uw .beancount-bestand). U kunt ook het bronbestand openen in een externe editor vanuit Fava. Fava ondersteunt zelfs sneltoetsen in de stijl van “Gmail” (druk op
?in de UI om ze te zien) voor gevorderde gebruikers. Dit verandert Fava in een lichtgewicht boekhoudsysteem waar u gegevens kunt invoeren en bekijken in dezelfde interface. - Rapporten en inzoomen op rekeningen: Fava biedt standaard boekhoudrapporten: de resultatenrekening (Winst & Verlies), de balans, de proefbalans en een portefeuilleoverzicht voor beleggingen. De balans en resultatenrekening zijn interactief – u kunt op een rekening klikken om in te zoomen op de details, of schakelen tussen de weergave tegen kostprijs versus marktwaarde voor activa. Fava toont ook “ongerealiseerde winsten” voor beleggingen als u prijsgegevens heeft. Het genereert een journaalweergave van alle boekingen en maakt het mogelijk om dat journaal op verschillende criteria te filteren (ideaal voor het vinden van specifieke transacties).
- Documentbeheer: Als u kwitanties of afschriften bijvoegt, helpt Fava deze te organiseren. Beancount heeft een concept van een documentenmap, en met Fava kunt u bestanden slepen en neerzetten op rekeningen of transacties – het slaat ze op en voegt een documentverwijzing toe aan uw grootboek. Dit is handig om bewijsstukken gekoppeld te houden aan uw grootboekgegevens.
- Aanpassing via extensies: Fava kan worden uitgebreid met plug-ins (geschreven in Python) om nieuwe rapporten of functionaliteit toe te voegen. Sommige extensies zijn gebundeld (bijv. een rapport met de portefeuillelijst voor beleggingen). We zullen later aangepaste extensies bespreken, maar in de basis staat het ontwerp van Fava het injecteren van nieuwe pagina's en zelfs aangepaste JavaScript toe via de extensie-API. Dit betekent dat als een bepaalde analyse of dashboard niet is ingebouwd, een gevorderde gebruiker deze kan toevoegen.
- Prestaties: Fava is efficiënt – het herlaadt de gegevens in het geheugen en serveert pagina's snel. De onderliggende Beancount-parsing is erg snel (C++ geoptimaliseerd in de nieuwste versie), waardoor zelfs grote grootboeken in een seconde of twee laden. In de praktijk kan Fava persoonlijke grootboeken van vele jaren aan, hoewel extreem grote bestanden (tienduizenden transacties) baat kunnen hebben bij enige optimalisatie (bijv. het archiveren van oude boekingen).
- Webtoegang en mobiliteit: Door Fava op een server of zelfs uw laptop te draaien, heeft u toegang tot uw financiën vanuit elke browser. Sommige gebruikers hosten Fava op een privéserver of Raspberry Pi, zodat ze onderweg hun financiën kunnen controleren (eventueel beveiligd achter een wachtwoord of VPN, aangezien Fava geen ingebouwde authenticatie heeft). Dit geeft u in feite een zelfgehoste “web-app” voor uw financiën, zonder uw gegevens aan een derde partij te geven.
Samenvattend biedt Beancount een robuuste basis voor transparante, tekstgebaseerde boekhouding met strikte regels voor dubbel boekhouden en ondersteuning voor meerdere valuta. Fava bouwt daarop voort door een toegankelijke interface te bieden met onmiddellijke inzichten (rapporten, grafieken) en de mogelijkheid om met uw gegevens te communiceren. Samen vormen ze een zeer flexibel systeem voor boekhouding en analyses waarover u van begin tot eind de controle heeft.
Realtime (of bijna-realtime) analyses met Beancount & Fava
Het realiseren van realtime of bijna-realtime analyses met Beancount en Fava vereist het automatiseren van de gegevensstroom naar uw grootboek en het waarborgen dat de tools actuele informatie weergeven. Standaard is Beancount een batchproces (u voegt boekingen toe aan het bestand en bekijkt vervolgens de rapporten), en Fava zal wijzigingen detecteren en om een vernieuwing vragen. Met de juiste configuratie kunt u updates echter stroomlijnen, zodat nieuwe transacties en wijzigingen vrijwel onmiddellijk verschijnen.
Bestandswijzigingsdetectie: Fava monitort het grootboekbestand op wijzigingen. Als u het .beancount-bestand (of de bijgevoegde bestanden) in een editor bewerkt, toont Fava een banner met de tekst "Wijzigingen gedetecteerd – klik om te herladen". Na het klikken (of het indrukken van herladen) worden de gegevens opnieuw geladen en wordt de weergave bijgewerkt. In de praktijk is dit herladen erg snel (meestal minder dan een seconde voor gemiddelde grootboeken). Dit betekent dat Fava kan dienen als een live dashboard als uw grootboekbestand regelmatig wordt bijgewerkt. (In de debug-modus kan Fava zelfs automatisch herladen bij bestandswijzigingen, hoewel het standaard wacht op bevestiging van de gebruiker om de weergave niet te verstoren.)
Continue import/update-pijplijn: Om realtime gegevens te krijgen, moet u het toevoegen van transacties aan het Beancount-bestand automatiseren. Er zijn een paar veelvoorkomende strategieën:
-
Geplande importtaken (Cron): Veel gebruikers stellen een cron-job (of geplande taak) in om periodiek nieuwe transacties op te halen bij financiële instellingen (bijvoorbeeld elke nacht of elk uur) en deze toe te voegen aan het grootboek. U kunt bijvoorbeeld de Beancount importer-plug-ins gebruiken om de nieuwste banktransacties op te halen via een API of OFX-download. Een Beancount-gebruiker bouwde een automatiseringspijplijn zodat hun boeken zichzelf bijwerken: "het zien van mijn boekhouding die zichzelf bijwerkt zonder dat ik er iets aan hoef te doen in een open formaat geeft me pure vreugde". Dit werd bereikt door verbinding te maken met bank-API's en regelmatige updates in te plannen. Tools zoals
bean-fetch(voor OFX) of aangepaste Python-scripts die gebruikmaken van bank-API's (zoals Plaid) kunnen volgens een schema draaien en nieuwe boekingen naar het grootboek schrijven. Na elke geplande import kunt u, als Fava actief is, eenvoudig Fava vernieuwen om de nieuwe gegevens te zien. -
Bestandswatchers en triggers: In plaats van op tijd gebaseerde schema's kunt u bestandswatchers gebruiken om op gebeurtenissen te reageren. Als uw bank u bijvoorbeeld een dagelijks afschrift kan e-mailen of als u een CSV in een map plaatst, kan een script dat bestand detecteren (met behulp van
inotifyop Linux of vergelijkbaar) en onmiddellijk de importroutine uitvoeren en vervolgens Fava een signaal geven om te herladen. Hoewel Fava nog geen ondersteuning biedt voor het pushen van een live reload naar de browser, zijn de gegevens in ieder geval bijgewerkt, zodat de informatie actueel is wanneer u de pagina de volgende keer bekijkt of op herladen klikt. Sommige community-projecten gaan verder: voor ledger (een verwant van Beancount) heeft een gebruiker een kleine server gemaakt die grootboekgegevens in realtime naar Grafana stuurt, wat aantoont dat een vergelijkbare aanpak met Beancount kan worden gevolgd – in feite het bouwen van een daemon die continu gegevens naar uw dashboards stuurt. -
Directe API-integratie: In plaats van via bestanden te werken, kunnen geavanceerde gebruikers rechtstreeks verbinding maken met bank-API's (zoals Plaid of regionale Open Banking-API's) om regelmatig transacties op te halen. Een gemotiveerd individu kan "live" imports scripten in een lus (met de juiste snelheidsbeperkingen) – waarbij de bank effectief elke paar minuten wordt gepolst voor nieuwe gegevens. Niets houdt u tegen om u "aan te melden bij de Plaid API en lokaal dezelfde [automatisering] uit te voeren". Elke nieuwe transactie kan aan het Beancount-bestand worden toegevoegd zodra deze binnenkomt. Met deze aanpak wordt Fava echt een realtime dashboard voor uw rekeningen, vergelijkbaar met de actuele feed in commerciële apps.
Gegevensverversing in Fava: Zodra uw gegevens worden bijgewerkt, is het eenvoudig om Fava deze te laten tonen: een browservernieuwing (F5) of het klikken op de herlaadbanner laadt de nieuwste staat van het grootboek. Als u liever helemaal niet klikt, activeert het uitvoeren van Fava met --debug een autoreload voor de ontwikkeling van extensies, die sommigen hebben gebruikt om onmiddellijke paginavernieuwingen bij wijzigingen af te dwingen. Als u uw eigen front-end bouwt, kunt u deze ook periodiek een kleine API laten polsen die het laatste saldo of iets dergelijks uit het grootboek retourneert.
Onmiddellijke berekeningen: De snelle verwerking van Beancount betekent dat zelfs als u uw grootboekbestand elke paar minuten bijwerkt, de doorlooptijd van gegevens ophalen → bestand bijwerken → Fava herladen snel is. Een gebruiker merkt bijvoorbeeld op dat het herladen van Fava na het bewerken van het bestand "nauwelijks merkbaar is... zeker minder dan een seconde" voor grootboeken van redelijke omvang. U kunt dus een Fava-venster open laten staan en periodiek op vernieuwen drukken om een live dashboard na te bootsen. (Voor een echt live-ervaring zou men een klein script kunnen bouwen om de browser automatisch te verversen of de functie van de browser gebruiken om elke N seconden te vernieuwen.)
Afstemming en waarschuwingen: Om realtime gegevens te kunnen vertrouwen, wilt u ook de saldi regelmatig afstemmen. Beancount maakt dit eenvoudig met balansbevestigingen en een "up-to-date"-indicator. In feite biedt Fava gekleurde indicatoren naast accounts als u deze markeert met bepaalde metadata (u kunt een account bijvoorbeeld markeren met fava-uptodate metadata en Fava zal deze rood/geel/groen kleuren op basis van de vraag of de laatste boeking een recente balanscontrole is). Dit kan worden gebruikt om snel te zien of het saldo van een rekening in het grootboek overeenkomt met het laatste afschrift van de bank. In een bijna-realtime opstelling kunt u dagelijkse balanscontroles automatiseren (zodat het grootboek elke ochtend het eindsaldo van gisteren van de bank bevat voor elke rekening). De indicator van Fava vertelt u dan of uw automatische import iets heeft gemist of dat er een afwijking is, wat vertrouwen geeft dat de "live" gegevens die u ziet nauwkeurig zijn.
Automatiseringsvoorbeeld: Stel dat u dagelijkse cashflow-updates wilt. U kunt een cron-job instellen die elke nacht om 03:00 uur draait: deze voert een Python-script uit dat de API van uw bank gebruikt om de transacties van de afgelopen dag op te halen, deze in import_vandaag.beancount schrijft en dat bestand vervolgens toevoegt aan uw hoofd-grootboek. Het schrijft ook een balansbevestiging voor het einde van de dag. Wanneer u wakker wordt, opent u Fava – het toont alle transacties tot en met gisteren en u ziet de inkomsten/uitgaven van de huidige maand bijgewerkt. Als u gedurende de dag een uitgave doet, kunt u deze handmatig toevoegen (bijvoorbeeld via het formulier voor nieuwe transacties van Fava op uw telefoon) of wachten op de nachtelijke import. Deze hybride aanpak (grotendeels geautomatiseerd, met de mogelijkheid om ad-hoc handmatig toe te voegen) geeft een beeld dat dicht bij realtime ligt. Een andere benadering is om de Journaal-pagina van Fava open te laten en deze als register te gebruiken: terwijl u geld uitgeeft, legt u de transactie snel vast (zoals het invullen van een chequeboek) – dan bent u de realtime feed. Dit is handmatiger, maar sommige gebruikers waarderen het bewustzijn dat het met zich meebrengt. Voor echt streaming updates zonder handmatige stappen moet u investeren in scripting en mogelijk gebruikmaken van API's van derden, zoals besproken.
In samenvatting kunt u door de import-automatisering van Beancount te combineren met de snelle verversing van Fava bijna-realtime financiële gegevens verkrijgen. Het is misschien niet met "één druk op de knop" zo eenvoudig om hetzelfde niveau van live feed te bereiken als een dienst als QuickBooks (die automatisch bankfeeds ophaalt), maar het is mogelijk – en belangrijker nog, u behoudt de volledige controle en transparantie over het proces. Zoals een pleitbezorger van plaintext accounting opmerkte, kan een kleine inspanning vooraf een geautomatiseerd systeem opleveren dat "veel beter is dan commerciële oplossingen, en veel flexibeler en uitbreidbaarder". In het volgende gedeelte zullen we zien hoe de visualisatiemogelijkheden van Fava u in staat stellen om deze actuele gegevens onmiddellijk te begrijpen, waardoor ruwe transacties worden omgezet in inzichten.
title: Visualisatiemogelijkheden in Fava (Kasstromen, Trends, Real-time Inspectie) description: Ontdek hoe Fava uw Beancount-gegevens transformeert in interactieve visuele rapporten, van treemaps voor uitgaven tot trends in netto vermogen en real-time kasstroomanalyses. keywords:
- Fava visualisatie
- Beancount grafieken
- kasstroom tracking
- financieel dashboard
- netto vermogen trend
- plaintext accounting
- financiële rapportage image: "https://opengraph-image.blockeden.xyz/api/og-beancount-io?title=Visualisatiemogelijkheden in Fava (Kasstromen, Trends, Real-time Inspectie)"
Visualisatiemogelijkheden in Fava (Kasstromen, Trends, Real-time Inspectie)
(GitHub - beancount/fava: Fava - webinterface voor Beancount) Fava’s resultatenrekening-rapport (in de web-UI) ondersteunt rijke visualisaties zoals treemaps (afgebeeld) en sunburst-diagrammen voor snel inzicht in de samenstelling van inkomsten en uitgaven. In deze treemap vertegenwoordigt elk rechthoekje een uitgavencategorie, geschaald naar het bedrag – u kunt direct zien dat Huur (groot groen blok) de uitgaven domineert. De bovenste filterbalk en bedieningselementen (rechtsboven) maken het mogelijk om de valuta, het type grafiek en de tijdsperiode te wijzigen (bijv. het bekijken van maandelijkse gegevens). Fava biedt ook lijngrafieken (bijv. netto vermogen over tijd) en staafdiagrammen (bijv. inkomsten vs. uitgaven per maand) om trends in uw financiële gegevens te ontdekken.
Een van de grootste sterktes van Fava is het direct omzetten van grootboekgegevens in visuele, interactieve rapporten. Zodra het grootboek is geladen, genereert Fava grafieken die het eenvoudig maken om kasstromen en trends in één oogopslag te begrijpen:
-
Treemap/Sunburst van Inkomsten & Uitgaven: Op de pagina van de resultatenrekening kan Fava uw inkomsten en uitgaven weergeven als een treemap of sunburst-diagram. Deze zijn uitstekend voor "in één oogopslag" visualisatie van de kasstroom. Als uw maandelijkse uitgaven bijvoorbeeld als een treemap worden weergegeven, komt de oppervlakte van elke rechthoek overeen met de omvang van elke uitgavencategorie. Grote blokken laten onmiddellijk zien waar het meeste van uw geld naartoe is gegaan (bijv. huur of hypotheek, belastingen, enz.), terwijl kleinere blokken minder belangrijke uitgaven tonen. Dit is extreem nuttig voor het spotten van trends in uitgaven – als het blok "Uit eten" elke maand groeit, zult u dit visueel opmerken. U kunt overschakelen naar een sunburst-diagram om hiërarchische uitsplitsingen te zien (bijv. de buitenste ring kan subcategorieën tonen zoals Boodschappen vs. Restaurants binnen de categorie Voeding). Deze grafieken worden bijgewerkt voor elke periode die u hebt gefilterd (één maand, jaar tot nu toe, enz.), wat u een directe kasstroom-visualisatie voor die periode geeft. Een gebruiker op het plaintext accounting-forum merkte op: “Ik maak veel gebruik van de inkomsten- en uitgaven-treemaps. Ze geven een geweldig visueel gevoel van onze fiscale bewegingen.” – dit soort direct begrip is precies waar de grafieken van Fava op gericht zijn.
-
Netto Vermogen en Saldo over Tijd: Fava biedt een lijngrafiek voor het netto vermogen over tijd (op de "Balans" of "Statistieken" pagina). Deze grafiek plot de som van uw activa minus passiva op elk moment (per dag, week of maand). Het is onschatbaar voor het spotten van trends – u kunt het traject van uw financiën zien (bijv. gestaag stijgend, of dips op bepaalde momenten). Als u beleggingen heeft, kunt u schakelen tussen het tonen van de waarde tegen kostprijs versus marktwaarde (als prijsgegevens zijn geregistreerd) – u zou bijvoorbeeld kunnen zien dat uw netto vermogen tegen marktwaarde fluctueert met de aandelenkoersen, terwijl het tegen kostprijs vloeiender verloopt. Fava kan ook rekeningsaldi over tijd weergeven. Als u op een rekening klikt (bijv. Activa:Bank:Betaalrekening), toont de rekeningpagina een grafiek van de saldogeschiedenis van die rekening. U kunt direct inspecteren hoe uw cashpositie zich ontwikkelt – wat in feite een kasstroomgrafiek is (de helling van de saldolijn geeft de netto kasstroom aan). Als deze naar beneden trendt, weet u dat u in die periode meer uitgeeft dan u verdient. Door deze trends te onderzoeken, kunt u patronen ontdekken zoals "elke december dipt mijn spaargeld (feestdaguitgaven)" of "mijn beleggingen zijn dit kwartaal scherp gegroeid".
-
Staafdiagrammen voor Periodieke Vergelijking: In de weergave van de resultatenrekening heeft Fava tabbladen voor "Maandelijkse winst", "Maandelijkse inkomsten", "Maandelijkse uitgaven", enz. Het selecteren hiervan toont staafdiagrammen per maand. Bijvoorbeeld, Maandelijkse Netto Winst toont het surplus/tekort van elke maand als een staaf, waardoor het gemakkelijk is om prestaties over maanden heen te vergelijken. U kunt snel uitschieters identificeren (bijv. een grote negatieve staaf in april betekent dat die maand een ongebruikelijk verlies of hoge uitgave had). Op dezelfde manier stapelt of groepeert het staafdiagram "Maandelijkse Uitgaven" de uitgaven per categorie per maand, zodat u kunt zien welke categorieën fluctueren. Dit is geweldig voor trendspotting door de tijd heen – u kunt bijvoorbeeld merken dat uw "Reisuitgaven" elke zomer pieken, of dat de energierekeningen in de winter hoger zijn. Fava geeft u in essentie enkele mogelijkheden van een budgetterings-app (het volgen van trends), maar met volledige aanpasbaarheid (omdat u zelf de categorieën definieert en hoe deze worden samengevoegd).
-
Real-time Filtering en Gegevensinspectie: De visualisaties in Fava zijn niet statisch; ze werken nauw samen met de filtering van Fava. Stel dat u een specifiek scenario wilt inspecteren: "Hoe zien mijn driemaandelijkse kasstromen eruit voor alleen mijn zakelijke rekeningen?" U kunt het tijdsfilter instellen op Q1 2025 en de rekeningen filteren op uw zakelijke hiërarchie – Fava zal de grafieken onmiddellijk bijwerken om de netto-inkomsten, de treemap van uitgaven, enz. te tonen, maar alleen voor die subset. Deze interactieve analyse betekent dat u zeer snel ad-hoc analyses kunt uitvoeren, zonder query's te hoeven schrijven. De Journaal-weergave ondersteunt ook live filtering: u kunt zoeken op een substring van de begunstigde of omschrijving en direct een gefilterde lijst met transacties zien. Als u naar real-time gegevens kijkt (bijvoorbeeld nadat u de transacties van vorige week hebt geïmporteerd), kunt u filteren op een tag zoals
#ongecategoriseerdom nieuwe transacties te zien die mogelijk nog een categorie nodig hebben, of op@in-behandeling(als u nog niet verwerkte posten markeert) om te zien wat er nog niet is afgehandeld. Deze real-time inspectiemogelijkheid helpt ook de gegevenskwaliteit te waarborgen — omdat u anomalieën direct kunt isoleren en aanpakken. -
Kasstroomoverzicht (indirect): Hoewel Beancount/Fava standaard geen formeel kasstroomoverzicht produceert (uitsplitsing in operationele, investerings- en financieringsactiviteiten), kunt u dit nabootsen met aangepaste query's of door rekeningen te structureren. U kunt bijvoorbeeld bepaalde transacties taggen of specifieke rekeningen gebruiken voor investeringen en financiering, en vervolgens de totalen opvragen. Met de query-interface van Fava kunt u een BQL-query uitvoeren zoals:
SELECT sum(amount) WHERE account ~ "Activa:Bank" AND year = 2025om de kasstroom voor het jaar te verkrijgen, enz. Dat gezegd hebbende, vinden de meeste particuliere gebruikers de combinatie van balanstrends en inkomsten-/uitgavengrafieken voldoende voor het begrijpen van hun kasstromen. -
Visualisatie van Portefeuille en Posities: Op de pagina Posities (Holdings) toont Fava uw huidige bezittingen aan grondstoffen (bijv. aandelen, obligaties, crypto) met hoeveelheden, kostprijs, marktwaarde en ongerealiseerde winsten. Hoewel dit een tabel is en geen grafiek, is het zeer nuttig voor real-time inspectie van de status van uw portefeuille. Sommige extensies (zoals fava-investor, die later worden besproken) voegen meer visuals toe voor portefeuilles, zoals cirkeldiagrammen voor de allocatie of rendementsgrafieken. Zelfs zonder extensies kunt u zien hoe de waarde van uw aandelenportefeuille verandert op basis van de meest recente prijzen – als u prijsnoteringen regelmatig bijwerkt (wat dagelijks geautomatiseerd kan worden), zullen de grafieken van Fava de actuele marktwaarde van uw beleggingen weerspiegelen.
In de praktijk worden de visuele rapporten van Fava net zo snel bijgewerkt als de onderliggende gegevens. Op het moment dat een nieuwe transactie wordt toegevoegd en de pagina wordt vernieuwd, worden de grafieken opnieuw berekend. Er is geen langdurige herbewerking nodig. Dit betekent dat als u een semi-geautomatiseerde pipeline heeft die de hele dag door gegevens aanlevert, u Fava open kunt houden en periodiek op vernieuwen kunt klikken om bijgewerkte grafieken te krijgen – effectief real-time financiële monitoring.
Stel u bijvoorbeeld voor dat u een klein bedrijf runt en u wilt het beschikbare geld en de dagelijkse uitgaven in de gaten houden. U kunt Fava open hebben staan op een aangepast dashboard (eventueel met een extensie of het query-scherm) dat het "Banksaldo vandaag" en "Uitgaven – Vandaag vs. Gisteren" toont. Elke keer dat u vernieuwt nadat er nieuwe gegevens binnenkomen, ziet u die cijfers veranderen. Dit is vergelijkbaar met wat dure real-time dashboards bieden, maar dan met open-source tools. Het verschil is dat u mogelijk handmatig moet vernieuwen of vernieuwingen moet inplannen, terwijl die tools updates automatisch pushen. Maar functioneel gezien is het inzicht dat u krijgt hetzelfde, met het extra voordeel dat u op elk getal in Fava kunt inzoomen (klik erop om de onderliggende transacties te zien) – iets wat veel BI-dashboards missen.
Samenvattend verandert Fava uw boekhoudgegevens in direct visueel inzicht: kasstroomuitsplitsingen, trendlijnen, vergelijkingen over tijd en interactieve filtering helpen u allemaal het verhaal achter de cijfers te zien. Of u nu de uitgaven van vorige week controleert op anomalieën of meerjarige trends in uw netto vermogen beoordeelt, de grafieken en rapporten van Fava bieden real-time helderheid (zodra uw gegevens er zijn). Hierna zullen we zien hoe u deze mogelijkheden kunt uitbreiden of integreren met externe tools als u nog meer aangepaste analyses nodig heeft.
Integratie met externe dashboards en visualisatietools
Hoewel Fava een uitgebreide reeks ingebouwde rapporten en grafieken biedt, wilt u de gegevens van Beancount wellicht integreren met andere business intelligence (BI) of dashboardtools zoals Grafana, Metabase of aangepaste web-front-ends (bijv. een React-app). De motivatie hiervoor kan zijn om financiële gegevens te combineren met andere gegevensbronnen, geavanceerde grafiekmogelijkheden te gebruiken of dashboards met anderen te delen in een ander formaat. Dankzij de openheid van Beancount zijn er meerdere manieren om integratie te realiseren:
-
Database-integratie (BeanSQL / Beanpost): Een eenvoudige aanpak is om uw Beancount-grootboek te exporteren of te synchroniseren naar een SQL-database. Eenmaal in SQL kan elke BI-tool de gegevens opvragen. Communityleden hebben hiervoor zelfs tools gemaakt. Beanpost is bijvoorbeeld een experiment dat een Beancount-grootboek spiegelt naar een PostgreSQL-database, waarbij veel van de logica van Beancount is geïmplementeerd als SQL-functies. Dit biedt “een flexibele backend die kan worden geïntegreerd met andere tools zoals web-apps of rapportagesystemen.” U kunt Beanpost gebruiken om uw tekstgrootboek continu te synchroniseren met Postgres. Vervolgens kan een tool zoals Metabase of Tableau verbinding maken met die Postgres-database en kunt u alle gewenste grafieken of dashboards bouwen (met live-updates terwijl de database wordt bijgewerkt). Eén gebruiker meldde het gebruik van Postgres + PostGraphile om automatisch een GraphQL-API voor de grootboekgegevens bloot te stellen en vervolgens een aangepaste React-front-end daarop te bouwen – waarbij het grootboek in feite als een webservice wordt behandeld. Deze aanpak is geschikt voor gevallen waarin de interface van Fava niet volstaat (bijv. toegang voor meerdere gebruikers of meer mobielvriendelijke UI's). Het is technisch veeleisender, maar het toont de potentie: u kunt Beancount relatief eenvoudig integreren met moderne webstacks. Een lichtere variant is het gebruik van de ingebouwde SQLite-ondersteuning van Beancount – het uitvoeren van een query zoals
bean-query -e ledger.beancount "SELECT ..."kan resultaten opleveren, of u kunt de Python-API van Beancount gebruiken om gegevens op te halen en in een SQLite-database in te voegen. Sommige mensen gebruiken SQLite als tussenstation voor tools zoals Metabase (die SQLite-bestanden kunnen lezen via een verbinding). -
Grafana (tijdreeks-dashboards): Grafana is populair voor monitoring en tijdreeksgegevens. Financiële gegevens over een periode (uitgaven, saldi) kunnen worden behandeld als tijdreeksen. Er is binnen de community gesproken over het koppelen van Beancount aan Grafana. Eén idee was een Grafana Data Source Plugin die direct BQL-query's zou kunnen uitvoeren op een Beancount-bestand. Hiermee zouden Grafana-panelen rechtstreeks zaken kunnen weergeven als "Saldo van betaalrekening" als een meter (gauge) of "Uitgaven over de laatste 30 dagen" als een grafiek, door het grootboek te bevragen. Vanaf nu (2025) is er nog geen specifieke plug-in gepubliceerd, maar enthousiastelingen hebben ad-hoc-oplossingen gebouwd. Een Reddit-gebruiker genaamd aquilax bouwde bijvoorbeeld een eenvoudige server die Ledger CLI-gegevens beschikbaar maakt voor Grafana, en deelde dit als grafana-ledger-datasource-server. Een vergelijkbaar concept kan worden toegepast op Beancount: u schrijft een kleine HTTP-server in Python die het Beancount-grootboek laadt (met de API van Beancount om gegevens op te vragen) en eindpunten blootstelt die JSON-dataframes retourneren voor Grafana. Grafana heeft een generieke JSON-gegevensbron-plug-in die vervolgens uit deze API kan putten. In de praktijk betekent dit dat u een Grafana-dashboard kunt ontwerpen met panelen zoals "Maandelijkse omzet (staafdiagram)" of "Dagelijks kassaldo (lijndiagram)", en die panelen halen gegevens op uit uw door Beancount aangedreven API. Grafana biedt rijke visualisatie-opties (annotaties, drempelwaarden, combinatie met serverstatistieken, enz.). Andreas Gerstmayr (één van de beheerders van Fava) stelde precies deze aanpak voor en noemde zelfs dat hij een Fava-extensie heeft gemaakt genaamd fava-dashboards (hierover later meer) om grafieken te renderen op basis van BQL-query's, als alternatief voor een volledige Grafana-opstelling. Als u de voorkeur geeft aan de UI van Grafana, is integratie haalbaar – het vereist alleen het bouwen van de gegevensbrug.
-
Metabase (ad-hoc query's en dashboards): Metabase is een gebruiksvriendelijke BI-tool waarmee u query's kunt uitvoeren en dashboards kunt maken zonder code. Als u uw grootboek exporteert naar een relationeel formaat (via Beanpost of door tabellen met transacties, boekingen, enz. weg te schrijven), kunt u Metabase naar die database verwijzen. U kunt aangepaste tabellen maken zoals
uitgaven (datum, categorie, bedrag)vanuit uw grootboek, en vervolgens in Metabase eenvoudig grafieken genereren (bijv. een cirkeldiagram van uitgaven per categorie voor de afgelopen maand). Het voordeel is dat niet-technische gebruikers (of collega's) vervolgens via de GUI van Metabase met de gegevens kunnen werken zonder het Beancount-bestand aan te hoeven raken. Het nadeel is dat u de export/synchronisatie moet onderhouden. Sommige gebruikers hebben de nachtelijke conversie van het Beancount-grootboek naar SQLite geautomatiseerd, waarna Metabase de SQLite leest; anderen gebruiken de genoemde Postgres-aanpak. De sleutel is dat de dataportabiliteit van Beancount dit mogelijk maakt – u bent vrij om de gegevens te dupliceren in elke vorm die uw externe tool nodig heeft. -
Aangepaste front-ends / applicaties: Als u specifieke behoeften heeft, kunt u altijd een aangepaste applicatie bouwen bovenop Beancount. De Python-bibliotheek van Beancount geeft u toegang tot alle geparste vermeldingen, saldi, enz., zodat een Python-webframework (Flask, Django, FastAPI) kan worden gebruikt om een op maat gemaakte app te bouwen. Een klein bedrijf zou bijvoorbeeld een dashboard kunnen bouwen dat KPI-metrieken toont (zoals brutomarge, dagelijkse verkopen, enz.) door het grootboek te bevragen en dit eventueel te combineren met niet-grootboekgegevens (zoals het aantal bediende klanten). Eén communitylid bouwde een mobielvriendelijke web-UI omdat Fava niet intuïtief was voor diens partner – zij gebruikten het grootboek in een database om deze aangepaste UI aan te sturen. Als u de voorkeur geeft aan JavaScript/TypeScript, kunt u een tool gebruiken om het grootboek naar JSON te converteren en van daaruit verder bouwen. Sommige projecten zoals beancount-web of beancount-query-server zijn in de community geopperd om Beancount-gegevens via een API bloot te stellen, hoewel de API van Fava (indien uitgevoerd in "headless"-modus) ook zou kunnen worden gebruikt – Fava heeft intern een API-eindpunt voor query's.
-
Excel / PowerBI-integratie: Het is vermeldenswaard dat u zelfs kunt integreren met Excel of PowerBI. Beancount (en Fava via een add-on) kan queryresultaten exporteren naar CSV- of Excel-bestanden. Een workflow zou kunnen zijn: een nachtelijke taak genereert een Excel-bestand met de belangrijkste financiële cijfers uit Beancount, en PowerBI is ingesteld om dat bestand te importeren. Dit is wat indirect, maar voor organisaties die Excel / PowerBI al intensief gebruiken, is het een laagdrempelige integratie. PowerBI ondersteunt ook Python-gegevensbronnen, dus men zou een kort Python-script kunnen schrijven dat BQL-query's uitvoert en dit als gegevensbron binnen PowerBI gebruiken, waardoor een directe verbinding ontstaat.
Case Study – Grafana-integratie-idee: Josh, een Beancount-gebruiker, vroeg op de mailinglijst naar het pushen van Beancount-metrieken naar Prometheus en het bekijken daarvan in Grafana. De kernontwikkelaars antwoordden dat in plaats van gegevens in Prometheus te dupliceren, een betere aanpak een Grafana-plug-in of service is die rechtstreeks het Beancount-grootboek bevraagt. Andreas deelde zijn fava-dashboards-extensie die aangepaste grafieken rendert binnen Fava zelf als voorbeeldoplossing. De les is: u heeft opties – ofwel integreren via bestaande BI-infrastructuur (Prometheus + Grafana of SQL + Metabase) of Fava uitbreiden om aan uw behoeften te voldoen (het volgende gedeelte gaat daar dieper op in).
Beveiliging en overwegingen voor meerdere gebruikers: Wees bij integratie in externe tools alert op de gevoeligheid van gegevens. De plain-text van Beancount bevat vaak privé financiële informatie, dus elke server die deze blootstelt, moet worden beveiligd (geauthenticeerd). Als u gegevens verplaatst naar een cloud-BI-tool, verliest u mogelijk wat privacy. Zelfgehoste tools (open-sourceversies van Grafana / Metabase) kunnen lokaal worden uitgevoerd om dat risico te beperken. Bovendien, als meerdere mensen dashboards moeten bekijken, kan een extern alleen-lezen dashboard de voorkeur hebben boven iedereen toegang geven tot Fava (waar ze gegevens zouden kunnen bewerken als ze niet voorzichtig zijn). Een startup zou Beancount bijvoorbeeld intern kunnen gebruiken, maar Metabase inzetten om afdelingshoofden inzicht te geven in uitgaven versus budget zonder de grootboekbestanden aan te raken.
In het kort: Beancount en Fava werken goed samen met anderen. U kunt het hele ecosysteem van datatools benutten met een klein beetje verbindingscode: push grootboekgegevens naar een SQL-database voor BI-tools, serveer ze via API's voor web-apps, of gebruik zelfs gespecialiseerde bibliotheken om ze naar tijdreekssystemen te streamen. Deze flexibiliteit betekent dat u nooit vastloopt als de ingebouwde visuals van Fava niet voldoen aan een specifieke vereiste – u kunt altijd integreren in een ander platform terwijl u Beancount blijft gebruiken als uw bron van waarheid. Vervolgens kijken we naar het uitbreiden van Fava zelf met plug-ins en aangepaste dashboards, wat vaak een eenvoudigere route is dan externe integratie als u slechts een paar extra functies nodig heeft.
title: Aangepaste dashboards en Fava uitbreiden met plugins (Codevoorbeelden) description: Leer hoe u Fava kunt uitbreiden met Python-plugins en aangepaste dashboards kunt maken met fava-dashboards voor geavanceerde financiële rapportage in Beancount. keywords:
- Fava extensies
- Beancount dashboards
- fava-dashboards
- boekhoudautomatisering
- Python accounting plugins
- financiële rapportage tags: [fava, plugins, dashboards, python] image: "https://opengraph-image.blockeden.xyz/api/og-beancount-io?title=Aangepaste dashboards en Fava uitbreiden met plugins (Codevoorbeelden)"
Aangepaste dashboards en Fava uitbreiden met plugins (Codevoorbeelden)
Fava is ontworpen om uitbreidbaar te zijn : u kunt nieuwe pagina's, grafieken en gedragingen toevoegen door Fava-plugins (extensies) in Python te schrijven. Hierdoor kunt u de webinterface aanpassen aan uw specifieke behoeften zonder een volledig afzonderlijke app te hoeven bouwen. We verkennen twee belangrijke wegen voor aanpassing : ( 1 ) Het gebruiken of schrijven van Fava-extensies, en ( 2 ) Het opzetten van aangepaste dashboards via community-plugins zoals fava-dashboards.
Fava-extensies (Aangepaste plugins)
Een Fava-extensie is in de kern een Python-module die een subklasse van FavaExtensionBase definieert. Wanneer Fava start, kan het deze module laden en integreren in de app. Extensies kunnen nieuwe rapportpagina's registreren, inhaken op gebeurtenissen en zelfs aangepaste JavaScript bevatten voor interactiviteit. Sommige extensies worden standaard met Fava meegeleverd ( bijv. portfolio_list voor een overzichtspagina van beleggingen ). Andere kunnen via pip worden geïnstalleerd of vanaf nul worden geschreven.
Om een extensie in te schakelen, gebruikt u het Beancount custom directief in uw grootboekbestand :
2010-01-01 custom "fava-extension" "my_extension_module" "{'option': 'value'}"
Dit vertelt Fava om de opgegeven module te laden. De ingebouwde Portfolio List-extensie wordt intern op een vergelijkbare manier ingeschakeld. Als u een extensie via pip hebt geïnstalleerd, verwijst u hier naar de modulenaam. De optionele JSON aan het einde is de configuratie voor de extensie ( als string doorgegeven ).
Voorbeeld – Auto-Commit extensie : Fava heeft een voorbeeldextensie fava.ext.auto_commit ( meegeleverd ) die automatisch wijzigingen doorvoert naar een VCS wanneer u het bestand bewerkt via de editor van Fava. Als u deze wilt gebruiken, voegt u het volgende toe :
2025-01-01 custom "fava-extension" "fava.ext.auto_commit" "{'repo': '/path/to/git/repo'}"
Deze extensie registreert een hook die na elke bestandsbewerking wordt uitgevoerd om een git commit uit te voeren. Het laat zien hoe extensies kunnen inhaken op de gebeurtenissen van Fava ( in dit geval na het opslaan van het bestand ).
Voorbeeld – Portfolio List extensie : Deze extensie voegt een pagina toe die uw beleggingen toont, gegroepeerd per activaklasse, enz. Het heeft een report_title = "Portfolio List" en bevat een template om de gegevens te renderen. Fava detecteert dat en voegt een nieuw menu-item "Portfolio List" toe onder Rapporten. De extensie bevat ook een klein beetje JavaScript ( met has_js_module = True ) om de pagina te verbeteren ( bijvoorbeeld voor interactieve grafieken op die pagina ). Om het in te schakelen ( als het nog niet standaard was ), doet u :
2025-01-01 custom "fava-extension" "fava.ext.portfolio_list"
( In dit geval is er geen configuratie nodig. )
Een aangepaste extensie schrijven : Stel dat u een aangepaste rapportpagina wilt, bijvoorbeeld een "Ouderdomsanalyse debiteuren" voor facturen. U kunt een bestand receivables.py maken zoals :
# receivables.py
from fava.ext import FavaExtensionBase
class ReceivablesReport(FavaExtensionBase):
report_title = "Ouderdomsanalyse debiteuren"
def on_page_load(self):
# Dit kan een hook zijn om gegevens te verzamelen
pass
U maakt ook een templates/ReceivablesReport.html om de HTML voor de pagina te definiëren. In die template heeft u toegang tot self.ledger ( het Beancount-grootboekobject ) en kunt u berekeningen uitvoeren. Doorloop bijvoorbeeld transacties om facturen te vinden die nog niet zijn betaald en groepeer ze op ouderdom. Zodra deze extensie is geschreven, voegt u deze toe aan uw grootboek :
2025-01-01 custom "fava-extension" "receivables"
( ervan uitgaande dat receivables.py zich in de directory van het Beancount-bestand of in het PYTHONPATH bevindt, kan Fava het op naam vinden ). Bij het starten van Fava ziet u nu een pagina "Ouderdomsanalyse debiteuren".
Achter de schermen roept Fava de methoden van uw extensie op de juiste momenten aan. U kunt methoden overschrijven zoals after_load_file ( om berekeningen uit te voeren nadat het grootboek is geladen ) of hooks gebruiken zoals before_request. De extensie kan indien nodig ook routes of API-eindpunten definiëren, maar meestal is het gebruik van de meegeleverde hooks en een template voldoende.
De documentatie van Fava merkt op dat het extensiesysteem nog in ontwikkeling is, maar het is al goed bruikbaar. In feite zijn veel geavanceerde functies eerst als extensie geprototypeerd.
Aangepaste dashboards met fava-dashboards ( Community-extensie )
In plaats van een extensie vanaf nul te schrijven, kunt u de fava-dashboards plugin gebruiken, gemaakt door een Fava-maintainer. Met deze extensie kunt u willekeurige dashboards definiëren via een YAML- ( of JSON- ) configuratiebestand, waarin u tekst, tabellen en grafieken combineert, aangedreven door BQL-queries. Het is in feite een manier om nieuwe "pagina's" in Fava te maken die meerdere aangepaste panelen bevatten.
Installatie en configuratie : Eerst installeert u het pakket ( bijv. pip install fava-dashboards ). Vervolgens activeert u het in uw Beancount-bestand met een custom directief dat naar uw dashboardconfiguratie verwijst. Bijvoorbeeld :
2010-01-01 custom "fava-extension" "fava_dashboards" "{ 'config': '/path/to/dashboards.yaml' }"
Dit vertelt Fava om de extensie te laden en uw YAML-bestand te gebruiken voor de configuratie.
Dashboards YAML-formaat : In dashboards.yaml definieert u een of meer dashboards en hun panelen. Bijvoorbeeld :
dashboards:
- title: "Cashflow Dashboard"
panels:
- title: "Netto kasstroom deze maand"
width: 50%
queries:
- bql: "SELECT sum(position) WHERE account ~ 'Income' OR account ~ 'Expenses'"
type: "jinja2"
template: "<h1>{{ panel.queries[0].result | float }} USD</h1>"
- title: "Trend kassaldo"
width: 50%
queries:
- bql: "SELECT date, balance WHERE account = 'Assets:Bank:Checking'"
type: "echarts"
script: |
const dates = {{ panel.queries[0].result | safe }}.map(row => row[0]);
const balances = {{ panel.queries[0].result | safe }}.map(row => row[1]);
return {
xAxis: { type: 'category', data: dates },
yAxis: { type: 'value' },
series: [{ data: balances, type: 'line' }]
};
Dit is een hypothetisch voorbeeld ter illustratie. Het eerste paneel berekent de netto kasstroom ( inkomsten minus uitgaven ) voor het huidige filter en toont dit als een groot getal ( met behulp van een Jinja2-template ). Het tweede paneel voert een query uit om het dagelijkse saldo van een betaalrekening op te halen en gebruikt vervolgens een ECharts-script ( ECharts is een JS-grafiekbibliotheek ) om een lijngrafiek te tekenen. Fava-dashboards ondersteunt paneeltypes zoals : html, jinja2, echarts, d3_sankey, enz., en levert de gegevens aan de scripts. In feite geeft het u volledige flexibiliteit om dashboards met meerdere componenten te ontwerpen – zonder een volledige Fava-extensie vanaf nul te schrijven.
De extensie zorgt voor de weergave hiervan wanneer u de dashboardpagina in Fava opent. U kunt meerdere dashboards maken ( elk verschijnt als een tabblad of afzonderlijke pagina ). Dit is extreem krachtig voor het maken van aangepaste financiële dashboards. U kunt bijvoorbeeld een "Budget versus Werkelijkheid" dashboard maken : één paneel toont een tabel van budget versus werkelijkheid per categorie ( via een query die twee sets rekeningen vergelijkt ), een ander paneel toont een staafdiagram van de uitgaven van het huidige jaar tot nu toe versus het voorgaande jaar, enz. Dit alles met alleen configuratie en minimale scripting, gebruikmakend van uw grootboekgegevens via BQL.
Codevoorbeeld – fava-dashboards inschakelen : Zoals hierboven getoond, is het toevoegen van de extensie één regel in uw grootboek. Voor de volledigheid is hier een minimaal voorbeeld in context :
option "title" "Mijn Grootboek"
option "operating_currency" "USD"
plugin "beancount.plugins.auto_accounts" ; (opent automatisch rekeningen)
1970-01-01 custom "fava-extension" "fava_dashboards" "{ 'config': 'dashboards.yaml' }"
En in dashboards.yaml :
dashboards:
- title: "Overzicht"
panels:
- title: "Nettovermogen"
queries:
- bql: "select sum(position) where account ~ 'Assets|Liabilities'"
type: "jinja2"
template: "<div>Nettovermogen: {{ panel.queries[0].result[0,0] }}</div>"
( Dit zou het nettovermogen in een eenvoudige div tonen ; een echt voorbeeld zou dit mooier opmaken en meer panelen toevoegen. )
Wanneer u Fava uitvoert en naar het dashboard "Overzicht" navigeert, ziet u uw berekende nettovermogen. U kunt vervolgens de template verfijnen of grafieken toevoegen waar nodig.
Andere noemenswaardige extensies : Naast fava-dashboards zijn er plugins zoals fava-investor, die geavanceerde beleggingsanalyse biedt ( grafieken voor activatoewijzing, tools voor belastingoptimalisatie, enz. ). Het inschakelen van fava-investor ( na pip install fava-investor ) voegt meerdere rapportpagina's toe die gerelateerd zijn aan beleggingen. Een andere is fava-review ( voor het beoordelen van transacties over een bepaalde periode ), enz. De community onderhoudt een "awesome-beancount" lijst met diverse plugins en tools. Door deze te bekijken, vindt u wellicht een kant-en-klare extensie die aan uw behoeften voldoet.
Wanneer uitbreiden versus extern integreren : Over het algemeen geldt dat als uw behoefte puur ligt bij de presentatie of berekening op basis van de bestaande grootboekgegevens, een Fava-extensie ideaal is ( houdt alles op één plek, respecteert filters, enz. ). Als uw behoefte het combineren van externe gegevens betreft of als u een drastisch andere UI nodig heeft, kan externe integratie ( zoals besproken in de vorige sectie ) gerechtvaardigd zijn. Bijvoorbeeld : website-statistieken tonen naast financiën – beter in Grafana/Metabase ; maar een nieuwe financiële KPI of rapport toevoegen – beter als Fava-plugin.
Voorbeeld – Een aangepaste KPI in Fava : Stel dat u het "Spaarpercentage" ( percentage van inkomsten dat wordt gespaard ) wilt bijhouden. U kunt dit doen met een extensie die dit berekent en een klein vakje op de hoofdpagina toont. Of met fava-dashboards kan één paneel een Jinja2-paneel zijn dat Spaarpercentage: X% uitvoert door de totale inkomsten en totale uitgaven op te vragen. Dit soort aangepaste statistieken is heel eenvoudig te injecteren met deze tools, terwijl het in een gesloten systeem zoals QuickBooks onmogelijk kan zijn om een nieuwe statistiek op het dashboard te maken.
Om te illustreren hoe beknopt het kan zijn, is hier een pseudo-code met fava-dashboards in YAML :
- title: "Spaarpercentage"
panels:
- title: "Spaarpercentage"
queries:
- bql: "SELECT sum(position) WHERE account ~ 'Income'"
- bql: "SELECT sum(position) WHERE account ~ 'Expenses'"
type: "jinja2"
template: |
{% set income = panel.queries[0].result[0][0] %}
{% set expense = -panel.queries[1].result[0][0] %} {# uitgaven zijn negatief in resultatenrekening #}
{% set rate = (income - expense) / income * 100 if income != 0 else 0 %}
<h3>Spaarpercentage: {{ rate|round(1) }}%</h3>
Dit berekent het spaarpercentage ( ervan uitgaande dat inkomstenrekeningen positief uitvallen en uitgaven negatief in de context van de BQL-query ) en geeft dit weer.
Het belangrijkste punt : Fava is geen statische tool – het is een uitbreidbaar platform. Met een beetje Python of zelfs alleen configuratiecode kunt u het uitgebreid aanpassen. Veel gebruikers delen kleine scripts of extensies op forums om zaken te doen zoals het tonen van komende rekeningen, het genereren van PDF-facturen van transacties, of het integreren van Beancount met bibliotheken voor belastingberekening. Wanneer u investeert in het leren of gebruiken van deze extensies, krijgt u een zeer persoonlijk financieel analysesysteem zonder vanaf nul te hoeven beginnen.
Use Cases: Persoonlijke Financiën vs. Boekhouding voor Kleine Bedrijven
Beancount en Fava kunnen worden gebruikt voor zowel persoonlijke als zakelijke boekhouding, maar de use cases en voordelen verschillen enigszins in de nadruk:
Persoonlijke Financiën
Voor individuen blinkt Beancount + Fava uit in het geven van volledig inzicht en overzicht in iemands financiën zonder afhankelijk te zijn van eigen (propriëtaire) apps. Veelvoorkomende use cases voor persoonlijke financiën zijn onder meer:
-
Onkosten bijhouden en budgettering: Velen gebruiken Beancount om elke uitgave te registreren en vervolgens uitgavenpatronen te analyseren. Met Fava kunnen ze zien waar het geld elke maand naartoe gaat (treemap van onkosten) en budgetten bijhouden door ze te vergelijken met verwachte waarden (sommigen doen dit via de Budgets-extensie of aangepaste query's). Eén gebruiker beschreef dat na de overstap naar Beancount “analyse van financiële gegevens (uitgaven, schenkingen, belastingen, enz.) triviaal is. Het is gemakkelijk te doen met Fava, maar ook eenvoudig met scripts... Ik heb een Python-script dat gegevens uit Beancount haalt met BQL, waarna ik pandas gebruik om een rapport op te stellen.”. Dit laat zien hoe persoonlijke gebruikers profiteren van zowel de ingebouwde UI als de mogelijkheid om naar behoefte eigen analyses te scripten.
-
Nettowaarde en doelen bijhouden: Omdat u alle activa (bankrekeningen, beleggingen, zelfs fysieke bezittingen als u dat wilt) in één grootboek kunt opnemen, krijgt u één overzicht van uw nettowaarde. Liefhebbers van persoonlijke financiën gebruiken dit om de voortgang naar doelen bij te houden (bijv. “FI-getal” of het aflossen van schulden). De grafieken van Fava die de nettowaarde in de loop van de tijd weergeven, werken motiverend – u ziet letterlijk de curve van uw rijkdom. Het is gebruikelijk om schulden zoals studieleningen of hypotheken in Beancount bij te houden en de saldi bij te werken; het grootboek geeft dan een compleet beeld van de financiële gezondheid.
-
Beleggingen en Crypto: Persoonlijk gebruik strekt zich vaak uit tot het bijhouden van een portfolio. Beancount kan aandelen, crypto, enz. verwerken, inclusief berekeningen van de verkrijgingsprijs (cost basis) en gerealiseerde winst (via plug-ins of query's). Het voordeel ten opzichte van de site van een broker is dat u alles over alle rekeningen heen kunt consolideren en de werkelijke activaspreiding kunt zien. De fava-investor plug-in is bijvoorbeeld gemaakt door een community-lid om beleggingsanalyses in Fava uit te voeren, inclusief zaken als treemaps voor activaspreiding en prestatiemetrics. Dit is iets wat hobbybeleggers doorgaans in Excel doen; Beancount biedt een meer rigoureuze, geautomatiseerde manier. Een blogpost getiteld “Beancount: DeFi Accounting For Noobs” illustreert zelfs het gebruik ervan om cryptocurrency-transacties en yield farming bij te houden, wat de flexibiliteit in moderne persoonlijke financiële scenario's aantoont.
-
Persoonlijke financiën in meerdere valuta: Als u in het buitenland woont of buitenlandse beleggingen aanhoudt, is Beancount uiterst nuttig omdat het valuta kan omrekenen en aggregeren. Gebruikers hebben opgemerkt dat “veel boekhoudsoftware niet goed is met meerdere valuta... Met Beancount kunt u elke gewenste commodity definiëren” en rapporten krijgen in de valuta van uw voorkeur. Voor een persoonlijke gebruiker met bijvoorbeeld een salaris in USD maar uitgaven in EUR, is dit een groot pluspunt.
-
Levensregistratie en journaling: Een onconventionele maar reële use case: sommigen behandelen het grootboek als een levenslogboek, waarbij ze transacties labelen met gebeurtenissen (zoals
#bruiloftof#vakantie2025) en dit vervolgens gebruiken om de kosten van gebeurtenissen te berekenen of zelfs als een dagboek van activiteiten (financiële metadata als proxy voor levensgebeurtenissen). Het tekstformaat en de tagging maken dit mogelijk op een manier die traditionele tools niet eenvoudig toestaan. -
Eenvoud en eigenaarschap: Persoonlijke financiën gaan ook over mentaliteit. Velen kiezen voor Beancount omdat ze “eigenaar wilden zijn van deze gegevens en deze gemakkelijk wilden analyseren, en niet vast wilden zitten aan een abonnement of leverancier”. Het recente verdwijnen van Mint.com (een populaire gratis budgetteringstool) heeft enthousiastelingen naar tekstgebaseerde boekhouding gedreven voor duurzaamheid op de lange termijn. Met Beancount weten ze dat ze hun grootboek over 20 jaar nog steeds kunnen openen. Voor de financiën van een enkel individu bieden de gegevens van Beancount (mogelijk gesynchroniseerd via Dropbox of Git) en de web-UI van Fava (die lokaal of op een privéserver kan worden gedraaid) een balans tussen gemak en controle die elders moeilijk te vinden is.
Potentiële uitdagingen voor persoonlijk gebruik: de initiële installatie en het leren van dubbel boekhouden kunnen voor sommigen een hindernis zijn. Maar veel bronnen (zoals de Beancount-tutorial en communityforums) helpen nieuwe gebruikers. Eenmaal ingesteld, kan het onderhoud grotendeels worden geautomatiseerd zoals beschreven, wat ideaal is voor iemand die zijn huishoudelijke financiën met minimale inspanning beheert.
Boekhouding voor Kleine Bedrijven
Kleine bedrijven, startups en freelancers kunnen ook Beancount + Fava gebruiken, hoewel de vereisten hier formelere rapportage en eventueel samenwerking omvatten:
-
Boekhouding en jaarrekeningen: Een bedrijf kan zijn grootboek bijhouden in Beancount, waarbij facturen, rekeningen, salarisadministratie, enz. worden vastgelegd, en een balans en winst-en-verliesrekening worden opgesteld. Beancount ondersteunt het factuurstelsel (accrual accounting) dat nodig is (u kunt rekeningen markeren als Debiteuren/Crediteuren en facturen registreren met boekingen op inkomsten en debiteuren, en later een betaling om de debiteurenpost te zuiveren). Fava toont deze dan correct onder Activa of Passiva. In een Reddit-discussie werd gevraagd of Beancount geschikt is voor bedrijven en of het de juiste financiële overzichten kan genereren – ja, het kan balansen, resultatenrekeningen en (met wat hulp van query's) kasstroomoverzichten produceren, aangezien dat slechts weergaven zijn van de gegevens uit het dubbel boekhouden. Het addertje onder het gras is dat Beancount geen specifieke boekhoudstandaarden afdwingt (dat hangt af van hoe u het gebruikt). Daarom moet een deskundige gebruiker (of accountant) het rekeningschema correct instellen voor het bedrijf. Er zijn communityvoorbeelden van het gebruik van Beancount voor startups – een HN-commentator zei: “Ik geniet echt van het gebruik van Beancount + Git voor het beheren van de boekhouding van mijn eigen startup-bedrijf”, hoewel hij opmerkte dat het wat tijdrovend was om periodiek mutaties toe te voegen. Dat tijdrovende werk kan worden verlicht met importautomatisering, zoals we hebben gezien.
-
Realtime financiële monitoring: Voor een klein bedrijf is cashflow cruciaal. Met Fava kan een ondernemer de banktegoeden en kasstroom bijna realtime volgen, net als bij privégebruik – maar hier is het nog kritieker. Door bankfeeds of imports te automatiseren, kunnen ze zien of een klantbetaling binnen is gekomen of dat een grote uitgave is verwerkt. QuickBooks biedt bankfeeds waarmee u “in realtime kunt zien hoe uw bedrijf ervoor staat”; met Beancount repliceert u dit door uw eigen bankintegratie. Het voordeel van Beancount is transparantie – u ziet precies wat er is geïmporteerd en hoe het is gecategoriseerd, in plaats van te vertrouwen op de soms ondoorgrondelijke matching-logica van QuickBooks.
-
Facturering en Debiteuren/Crediteuren: Beancount heeft geen ingebouwde facturatiemodule (zoals het genereren van PDF-facturen of het bijhouden van factuurnummers). Creatieve gebruikers hebben dit echter opgelost met add-ons. Men zou bijvoorbeeld een PDF-factuur kunnen genereren vanuit een transactie met behulp van een Jinja2-template of zelfs een extern script dat openstaande debiteurenposten leest. Er is een project “Beanie” dat fungeert als een lichtgewicht debiteurensysteem bovenop Beancount. Kleine bedrijven kunnen Beancount gebruiken voor het grootboek en een andere tool voor het versturen van facturen, en vervolgens de factuurgegevens importeren in Beancount. Het is een extra stap vergeleken met QuickBooks (dat facturen kan verzenden en vervolgens automatisch registreert zodra ze zijn betaald), maar het zorgt ervoor dat alle gegevens in het open grootboek terechtkomen.
-
Salarisadministratie en afschrijvingen: Dit zijn boekhoudtaken die kleine bedrijven uitvoeren. Beancount kan zeker loonboekingen registreren (waarbij brutoloon, belastingen, inhoudingen, enz. over de juiste rekeningen worden verdeeld) – maar u berekent deze doorgaans met externe tools of uw loonadministrateur en voert ze vervolgens in. Afschrijvingsschema's voor vaste activa zouden eveneens handmatig worden ingevoerd (of u zou een plug-in kunnen schrijven om maandelijks de afschrijvingen te automatiseren). Beancount heeft hiervoor geen automatische functies, maar dat geldt ook voor veel software voor kleine bedrijven, behalve het aanbieden van wat sjablonen. Het voordeel is dat u alles wat ongebruikelijk is kunt scripten. Als u bijvoorbeeld een aangepast schema voor omzetverantwoording hebt, kunt u die journaalposten in Python scripten en toevoegen.
-
Transparantie en controleerbaarheid: Bedrijven waarderen mogelijk dat Beancount een duidelijk controlespoor (audit trail) biedt. Elke transactie is helder en kan worden voorzien van links naar documenten (bonnen, contracten). Bij een controle kunt u het grootboekbestand samen met de bijgevoegde documenten laten zien, wat vrij eenvoudig is. Versiebeheer betekent ook dat u een auditlogboek hebt van wie wanneer wijzigingen heeft aangebracht (als meerdere mensen samenwerken via Git). Vergelijk dit met QuickBooks, waar een accountant mogelijk wijzigingslogboeken moet onderzoeken die niet gemakkelijk toegankelijk zijn voor de gebruiker.
-
Kosten: Beancount + Fava is gratis, wat aantrekkelijk is voor startups of kleine bedrijven die de softwarekosten willen minimaliseren. QuickBooks, Xero, enz. hebben maandelijkse kosten. De afweging is echter dat deze worden geleverd met ondersteuning en een eenvoudigere installatie. Een technisch onderlegde ondernemer zal graag wat tijd inruilen om kosten te besparen en flexibiliteit te winnen.
Echte voorbeelden: een andere gebruiker op HN zei dat ze het gebruikten voor een consultancy-LLC en dat het goed werkte, maar toen het aantal transacties groeide, begonnen ze bestanden per jaar te splitsen om de snelheid te behouden. De consensus is: voor een klein bedrijf (bijvoorbeeld tienduizenden transacties per jaar of minder) is Beancount uitstekend geschikt. Als u een groter mkb-bedrijf bent met honderdduizenden transacties, kan de prestatie aanleiding geven om ofwel een database-aanpak te gebruiken of te kiezen voor een specifiek gebouwd boekhoudsysteem – hoewel we Beanpost hebben om dat te proberen aan te pakken door Postgres als backend te gebruiken.
Samenwerking: Een punt van verschil – QuickBooks Online staat meerdere gebruikers (eigenaar, accountant, enz.) toe om tegelijkertijd te werken. Bij Beancount kan samenwerking via Git verlopen (meerdere gebruikers leggen wijzigingen vast). Dit werkt, maar vereist enige kennis van Git en conflictoplossing als mensen tegelijkertijd bewerken. Sommigen hebben online Git-platforms of zelfs Google Drive gebruikt om het grootboekbestand te delen. Het is te doen, maar niet zo naadloos als cloud-boekhoudsoftware. Echter, voor een klein team (of een solo-boekhouder + eigenaar) is het beheersbaar, en u kunt altijd alleen-lezen toegang verlenen via Fava (host het op een interne server en laat anderen rapporten bekijken zonder deze te bewerken).
Naleving van regelgeving: Voor persoonlijke financiën is dit geen probleem. Voor zakelijk gebruik moet u mogelijk officiële rapporten opstellen of boekhoudstandaarden volgen. Beancount kan worden gebruikt om rapportages te genereren die voldoen aan de GAAP-normen, maar het vereist dat de gebruiker de gegevens dienovereenkomstig invoert. Er is geen ingebouwde handhaving van GAAP-regels (bijv. geen ingebouwde module voor vaste activa om ervoor te zorgen dat u correct afschrijft). Een externe accountant kan nog steeds werken met een Beancount-grootboek (omdat het in feite een algemeen journaal is) – zij kunnen het naar Excel exporteren en eventuele correcties uitvoeren indien nodig. Sommige bedrijven geven om deze reden de voorkeur aan bekende software, of hebben in ieder geval een accountant nodig die vertrouwd is met tekstgebaseerde gegevens.
Wie gebruikt het voor zaken? Waarschijnlijk power-users: tech-startups, freelancers met een programmeerachtergrond, of bedrijven die veel waarde hechten aan datacontrole (bijv. financiële handelsondernemingen die aangepaste rapportage willen). In een Reddit-thread vroeg iemand of Beancount geschikt zou zijn voor een handelsonderneming – de antwoorden gaven aan van wel; het verwerkt meerdere valuta en kan de benodigde overzichten produceren, maar u zult er zelf wat tooling omheen bouwen.
Ter afsluiting van dit gedeelte: Gebruikers voor persoonlijke financiën houden van Beancount vanwege het inzicht en de controle die het geeft over hun eigen geld – het verandert financiën in een dataset waaruit ze informatie kunnen opvragen en waarvan ze kunnen leren, wat resulteert in zaken als het eenvoudig bijhouden van elke uitgave en het berekenen van statistieken die typische budgetteringstools niet kunnen bieden. Zakelijke gebruikers waarderen de transparantie, kostenbesparingen en aanpasbaarheid – ze kunnen de boekhouding integreren met de rest van hun softwarestack en vermijden vendor lock-in of maandelijkse kosten. Beide use cases profiteren van realtime analyses: een persoon kan de voortgang van zijn maandelijks budget volgen, een bedrijf kan de dagelijkse kasstromen in de gaten houden – in beide gevallen kan Fava actuele informatie presenteren wanneer deze wordt gevoed met tijdige gegevens.
Vergelijking met andere real-time analytics-platforms
Het is nuttig om Beancount + Fava te vergelijken met andere oplossingen die "real-time" financiële analyses bieden, zoals QuickBooks (met live bankkoppelingen) en Power BI (of vergelijkbare BI-dashboards). Elke benadering heeft zijn sterke punten en afwegingen op het gebied van transparantie, flexibiliteit en reactiesnelheid:
| Aspect | Beancount + Fava (Open-Source) | QuickBooks (met bankkoppelingen) | Power BI / Generieke BI |
|---|---|---|---|
| Transparantie & Gegevenseigendom | Volledig transparant – gegevens zijn platte tekst, u kunt elke transactie inspecteren. De logica is volledig zichtbaar (geen verborgen algoritmen). U bent voor altijd eigenaar van het formaat. Versiebeheer kan een audit trail van wijzigingen tonen. | Ondoorzichtig – gegevens opgeslagen in een besloten cloud-database. U bent afhankelijk van de export van Intuit voor back-ups. Sommige processen (bijv. automatische categorisatie) zijn niet volledig zichtbaar. Beperkte audit logs. Als u stopt met betalen, riskeert u de gemakkelijke toegang tot uw gegevens te verliezen. | Afhankelijk van gegevensbron – Power BI zelf is slechts een tool. Indien verbonden met een open database, behoudt u het eigendom van die gegevens. Power BI-bestanden of dashboards hebben echter een besloten formaat en vereisen Power BI om ze te bekijken. Transparantie van berekeningen is goed (u definieert ze zelf), maar het algehele systeem is complex. |
| Flexibiliteit & Aanpasbaarheid | Extreem flexibel. U kunt elke rekeningstructuur en elke valuta / instrument definiëren. U kunt aangepast gedrag of analyses scripten (Python, plug-ins). Geen opgelegde workflow – u stemt het af op uw behoeften (persoonlijk of zakelijk). Het uitbreidingssysteem van Fava en tools zoals fava-dashboards maken aangepaste dashboards binnen de app mogelijk. Als er iets ontbreekt, kunt u het waarschijnlijk zelf bouwen of integreren. | Matig. QuickBooks is rijk aan functies voor standaard boekhouding voor kleine bedrijven (facturering, salarisadministratie (aparte add-on), basisrapporten). Maar u bent beperkt tot de functies die Intuit biedt. Het rekeningschema en de categorieën moeten binnen hun paradigma passen. Aangepaste rapporten zijn beperkt; u kunt de database niet willekeurig bevragen. Integraties bestaan, maar via de API van Intuit (die beperkt is) of door te exporteren naar Excel. U ruilt flexibiliteit in voor gemak. | Zeer flexibel voor analyse en visualisatie. U kunt bijna elk diagram of elke KPI maken als de gegevens toegankelijk zijn. Power BI kan financiële gegevens eenvoudig combineren met andere gegevens (verkoop, web-analytics, enz.). Het is echter geen boekhoudsysteem – u moet de gegevens voorbereid hebben (wat vanuit Beancount zou kunnen!). Het dwingt geen dubbel boekhouden of boekhoudprincipes af; het is een onbeschreven blad. Flexibiliteit in visualisatie is hoog (aangepaste DAX-metrieken, enz.), maar vereist expertise. |
| Real-time reactiesnelheid | Bijna real-time met configuratie. Als u de gegevensinvoer automatiseert (feeds of frequente imports), zal Fava dit reflecteren zodra het grootboek is bijgewerkt en herladen. Het is standaard geen "push" real-time (handmatige verversing nodig), maar u kunt zo vaak bijwerken als gewenst (per minuut, per uur). De snelheid van bijwerken is erg hoog (tekstverwerking in milliseconden voor kleine wijzigingen). U beheert de frequentie – dit kan continu zijn via scripting. Geen gewacht op synchronisatiecycli van leveranciers. | Ontworpen voor bijna real-time banktransacties: "Met bankkoppelingen ziet u in real-time hoe uw bedrijf ervoor staat." In de praktijk worden bankkoppelingen in QuickBooks Online één keer per dag of op aanvraag bijgewerkt (afhankelijk van de bank). Het haalt automatisch nieuwe transacties op en probeert ze te categoriseren, zodat u ze niet handmatig hoeft te importeren. Wijzigingen verschijnen op het dashboard zonder handmatige tussenkomst. Sommige gegevens (zoals transacties in behandeling) worden echter pas getoond nadat ze zijn verwerkt. Ook worden bepaalde rapporten mogelijk pas bijgewerkt nadat er actie is ondernomen. Over het algemeen goede reactiesnelheid voor bankgegevens; minder voor zaken als handmatige journaalposten (nog steeds real-time, maar deze voert u zelf in). | Indien ingesteld met een live verbinding, kunnen dashboards in real-time of volgens een schema worden bijgewerkt. Bijvoorbeeld, een Power BI-dashboard dat DirectQuery op een SQL-database gebruikt, kan elke keer dat u het opent of zelfs automatisch worden bijgewerkt. Met de importmodus ververst u volgens een schema (bijv. elk uur). Het kan dus bijna real-time zijn, maar de complexiteit zit in het onderhouden van de datapijplijn. Bovendien vereist elke wijziging in de onderliggende gegevens een verversing van het model of de query's. Er kan een lichte vertraging optreden, afhankelijk van de configuratie (en bij gebruik van de Power BI cloud zijn er limieten aan de frequentie van automatische verversing in gratis abonnementen). |
| Automatisering & Gegevensinvoer | Imports kunnen in hoge mate worden geautomatiseerd, maar vereisen een aangepaste configuratie. U moet mogelijk scripts schrijven / onderhouden of community-importers gebruiken voor elke bank of gegevensbron. Geen kant-en-klare bankverbindingen (behalve wat u zelf maakt). De initiële opzet van de automatisering kost dus moeite. Aan de andere kant kan het, eenmaal ingesteld, volledig worden geautomatiseerd zonder handmatige invoer (sommige gebruikers hebben ~ 95 % automatisering bereikt). Ondersteunt ook handmatige invoer voor zaken die niet kunnen worden geautomatiseerd (via het webformulier van Fava of tekstbewerking). | Zeer geautomatiseerd voor bank- en creditcardkoppelingen (geen codering nodig – koppel gewoon uw rekeningen in QuickBooks). Het suggereert ook automatisch categorieën (op basis van eerdere gegevens en ML). "Elke transactie wordt direct gesynchroniseerd en voor u gesorteerd... QuickBooks beveelt categorieën aan en wordt in de loop van de tijd slimmer." Dit is een groot voordeel qua gemak – minder handmatig werk. Automatisering is echter vooral voor financiële rekeningen; andere zaken (zoals het splitsen van een uitgave in klassen) vereisen mogelijk nog steeds handmatige beoordeling. Als een bankkoppeling verbreekt, moet de gebruiker deze opnieuw verbinden of bestanden uploaden. | Power BI gaat helemaal niet over gegevensinvoer – het vertrouwt op de automatisering van de gegevensbron. Als uw gegevensbron een handmatig spreadsheet is, dan is het niet real-time. Als het een database is die wordt bijgewerkt door een ETL-proces, kan het bijna real-time zijn. Automatisering hangt dus af van wat u in Power BI invoert. Power BI zelf kan worden ingesteld om gegevens uit bronnen periodiek te verversen. Kortom, Power BI kan geautomatiseerde gegevens goed weergeven, maar creëert de automatisering niet zelf (u moet een geautomatiseerde datapijplijn hebben die de gegevens aanlevert). |
| Samenwerking & Delen | Samenwerking via tekst (bijv. Git) is krachtig maar technisch. Meerdere mensen kunnen bijdragen door het grootboekbestand of de bestanden te bewerken en wijzigingen samen te voegen (mergen). Fava kan "read-only" worden gehost om rapporten met anderen te delen, maar het ontbeert standaard gebruikersrollen of fijnmazige toegangscontrole. Voor een enkele gebruiker of een technisch onderlegd team is het prima. Auditoren of accountants hebben mogelijk geëxporteerde gegevens nodig (bijv. een proefbalans in Excel) om ermee te werken als ze niet vertrouwd zijn met het formaat. | Webtoegang voor meerdere gebruikers met machtigingen (QuickBooks Online ondersteunt accountants en meerdere zakelijke gebruikers met rollen). Eenvoudig delen – uw accountant kan inloggen en de boeken live bekijken. Dit is een sterk punt voor bedrijven. Voor persoonlijke financiën is toegang voor meerdere gebruikers minder relevant, maar cloudtoegang via verschillende apparaten is een voordeel (hoewel u Fava op een vergelijkbare manier op een persoonlijke cloud / VPS kunt draaien). QuickBooks integreert ook met andere diensten (salarisadministratie, bankleningen, enz.), wat nuttig is voor bedrijven en moeilijk te repliceren in Beancount. | Power BI blinkt uit in het delen van dashboards, vooral bij gebruik van de Power BI Service: u kunt dashboards publiceren voor collega's, insluiten in websites (met de juiste licentie), enzovoort. Het is gebouwd voor samenwerking aan inzichten. Dit is echter het "read-only" delen van analyses, niet het gezamenlijk bewerken van gegevens. Als meerdere gebruikers analyses moeten uitvoeren, kan dat als zij toegang krijgen tot het BI-project. Samenvattend: om financiële resultaten op een flitsende manier aan belanghebbenden te communiceren, is Power BI moeilijk te verslaan. Maar het is geen gezamenlijke boekhouding; het is gezamenlijke analyse. |
| Kosten | Gratis (open source). U besteedt mogelijk tijd in plaats van geld (voor installatie / onderhoud). Het zelf hosten van Fava brengt verwaarloosbare kosten met zich mee (op uw pc of een goedkope server). Geen licentiekosten voor extra gebruikers. | Betaald (maandelijks of jaarlijks abonnement). QuickBooks Online kan variëren van 70 + per maand, afhankelijk van het abonnement. Er zijn ook kosten voor salarisadministratie of geavanceerde functies. Veel kleine bedrijven betalen dit omdat het ondersteuning en voortdurende updates omvat. Maar over de jaren heen lopen de kosten op. Als u stopt met uw abonnement, kunt u bovendien de volledige toegang verliezen. | Gemengd. Power BI Desktop is gratis, maar het Pro-abonnement (voor het delen van dashboards) kost ~ $ 10 per gebruiker per maand. Als u dit al heeft via Office 365 of iets dergelijks, dan zijn de extra kosten mogelijk nul. Andere BI-tools variëren (sommige open-source tools zoals Metabase zijn gratis te gebruiken). Houd echter rekening met de tijdskosten voor het ontwikkelen van BI-oplossingen en eventueel de kosten voor het onderhouden van een database of cloudinfrastructuur. |
In samenvatting, Beancount + Fava vs QuickBooks: Beancount biedt superieure transparantie (u ziet en beheert alles, en uw gegevens zullen niet verdwijnen of worden vergrendeld) en flexibiliteit (u kunt alles modelleren in het grootboek, niet alleen wat QuickBooks verwacht). Het vereist meer eigen inzet, vooral voor automatisering en een verfijnde gebruikersinterface. QuickBooks is een "plug-and-play" oplossing die is geoptimaliseerd voor de behoeften van kleine bedrijven – bankkoppelingen, facturering, salarisadministratie (met add-ons) – en biedt bijna real-time updates met minimale inspanning van de gebruiker. Het is echter in veel opzichten een "black box"; u vertrouwt erop dat de software uw gegevens correct verwerkt, en soms betekent dit dat het moeilijk is om fouten te herstellen of te begrijpen hoe een getal tot stand is gekomen. Veel Beancount-gebruikers zijn mensen die gefrustreerd raakten door die "black boxes". Ze ruilen wat gemak in voor duidelijkheid.
Beancount + Fava vs Power BI (of andere BI): Ze kunnen complementair zijn. Power BI is geen boekhoudsysteem; het is bedoeld voor analyse. Sterker nog, een geavanceerde configuratie zou Beancount kunnen gebruiken om gegevens te consolideren en de nauwkeurigheid te waarborgen, en vervolgens Power BI gebruiken om directie-dashboards te maken op basis van die gegevens. Als we ze direct vergelijken, gaat Power BI meer over visuele flexibiliteit en het combineren van gegevensbronnen. De grafieken van Fava zijn eenvoudiger van opzet (gericht op boekhoudkundige behoeften), maar vereisen veel minder werk om op te starten (ze werken direct op uw grootboek, zonder dat modellering nodig is). Als uw doel puur het verkrijgen van inzichten en mooie visuals is en u bereid bent de gegevens voor te bereiden, kan een BI-tool geschikt zijn. Maar als uw doel het bijhouden van de boeken is en u interactieve rapporten als bijproduct wilt, volstaat Fava alleen vaak al.
Men zou het ook kunnen vergelijken met andere persoonlijke financiële tools (bijv. Mint of YNAB) of ERP-systemen, maar de vraag noemt specifiek real-time analytics-platforms. Op het gebied van real-time financiële overzichten: Beancount + Fava is als het hebben van een aangepast, open-source "live" financieel dashboard, QuickBooks is een besloten, geautomatiseerde boekhouding met live banksynchronisatie, en Power BI is een flexibel analyseplatform (niet specifiek voor financiën, maar kan daarvoor worden gebruikt als het van gegevens wordt voorzien).
Een veelzeggend citaat dat het verschil tussen open-source en commercieel benadrukt: "Met een kleine investering vooraf kunnen open-source tools feitelijk veel beter zijn dan commerciële oplossingen, en veel flexibeler en uitbreidbaarder." Dit vat de afweging goed samen. QuickBooks is gepolijst en werkt direct voor veelvoorkomende scenario's met minimale inspanning. Maar zodra u iets wilt dat het niet doet, loopt u tegen een muur aan. Bij Beancount loopt u zelden tegen een muur aan – u beschikt over de broncode en de gegevens, en u kunt uitbreiden of integreren naar behoefte. De prijs is dat u bereid moet zijn om zelf aan de knoppen te draaien.
Voor- en nadelen van het gebruik van Fava en Beancount voor datagestuurde inzichten
Laten we tot slot de voordelen en nadelen van Beancount + Fava als oplossing voor financiële analyses op een rijtje zetten:
Voordelen
- Transparantie en vertrouwen: Alle berekeningen ( totalen, saldi ) zijn afgeleid van een plain-text grootboek dat je zelf kunt inzien. Er is geen onverklaarbaar gedrag. Dit bouwt een groot vertrouwen in de cijfers op – cruciaal als je daar beslissingen op baseert. Het is "schone, transparante boekhouding" zonder lock-in. Je kunt een gerapporteerd cijfer altijd herleiden naar de onderliggende transacties, wat de essentie is van datagestuurd inzicht.
- Reproduceerbaarheid en audit trail: Omdat je versiebeheer kunt toepassen op het grootboek, heb je een tijdlijn van wijzigingen. Als er deze maand iets niet klopt, kun je een 'diff' van het grootboek bekijken om te zien wat er is veranderd. Dit betekent ook dat je kunt experimenteren ( “wat als ik deze uitgave anders classificeer?” ) en dit eenvoudig ongedaan kunt maken. Datagestuurd werken omvat vaak iteraties, en een controleerbaar grootboek moedigt dat aan.
- Flexibiliteit in analyse: Je bent niet beperkt tot vooraf gedefinieerde rapporten. De combinatie van BQL-query's ( Beancount Query Language ), Python-scripting en de filters van Fava betekent dat je bijna elke financiële vraag kunt beantwoorden. Wil je weten "Hoeveel heb ik de afgelopen 5 jaar elk jaar bij Starbucks uitgegeven?" – dat is slechts één query verwijderd. Of "Wat is het voortschrijdend gemiddelde van mijn uitgaven versus inkomsten over 3 maanden?" – scriptbaar met Python + pandas bovenop een query. Deze flexibiliteit is een enorm voordeel voor degenen die graag in de data duiken. Power-users hebben zelfs extensies gebouwd om financiële indicatoren ( bijv. statistieken over de prestaties van portefeuilles ) binnen Fava te berekenen. Kortom, je kunt zeer granulaire inzichten verkrijgen die veel standaardsoftware niet kan bieden.
- Integratie en uitbreidbaarheid: Het plugin-systeem van Fava en de toegankelijke Beancount API betekenen dat de tools kunnen meegroeien met je behoeften. Als je morgen een nieuw soort activa moet bijhouden of een nieuwe datastroom wilt integreren, kun je het systeem uitbreiden. De architectuur ( plain-text erin, diverse outputs eruit ) is zeer uitbreidbaar. Dit staat in contrast met gesloten systemen waar je een functie moet aanvragen en moet wachten.
- Dataconsolidatie: Voor individuen en zelfs bedrijven is het krachtig om alle rekeningen ( meerdere banken, brokers, etc. ) in één systeem te kunnen consolideren. Veel commerciële oplossingen werken met silo's ( of rekenen extra voor meerdere valuta of meerdere entiteiten ). Met Beancount kun je alles samenbrengen. Dit geeft een holistisch databeeld, wat inzichten over de hele linie mogelijk maakt. Je kunt bijvoorbeeld je werkelijke totale activaspreiding of netto kasstroom over zowel privé als zakelijk berekenen als je dat wilt, aangezien het gewoon data-invoer is.
- Kosteneffectiviteit: Het is gratis en open-source. Voor persoonlijk gebruik is dit een groot pluspunt ( geen abonnement zoals bij veel budgetterings-apps ). Voor startups of kleine organisaties kunnen die besparingen aanzienlijk zijn. Maar naast de geldelijke kosten is het ook efficiënt qua uitvoering ( Fava kan op een piepkleine server draaien ) en overdraagbaarheid ( geen dure migraties als je het ontgroeit – het is gewoon tekst ).
- Community en kennisdeling: De plain-text boekhoudcommunity ( Beancount, Ledger, etc. ) is zeer coöperatief. Mensen delen hun configuraties, aangepaste scripts en tips op forums en blogs. Dit betekent dat als je een specifieke behoefte hebt, iemand anders waarschijnlijk al iets vergelijkbaars heeft aangepakt. Zo hebben meerdere gebruikers bijgedragen aan slimme import-tools en zelfs categorisatie via machine learning ( bijv. de “smart*importer”-bibliotheek die scikit-learn gebruikt om ontvangers automatisch te categoriseren op basis van eerdere data ). Na verloop van tijd kan het gebruik van Beancount daadwerkelijk _slimmer_ worden als je deze community-tools benut – waarmee je het gemak van commerciële software benadert terwijl je de transparantie behoudt.
- Empowerment en leren: Het gebruik van Fava/Beancount dwingt je om op een dieper niveau met je financiële gegevens bezig te zijn. Veel gebruikers melden dat ze een veel beter begrip van hun financiën hebben gekregen door dit systeem dan met geautomatiseerde apps. Het is een beetje als het verschil tussen je eigen maaltijd koken versus fastfood halen – meer moeite, maar je weet precies wat erin zit en het kan op de lange termijn gezonder zijn. Voor datagestuurde inzichten kan dit "eigenaarschap" van het proces leiden tot waardevollere ontdekkingen, omdat je gemakkelijk de manier waarop je naar de data kijkt kunt kaderen en herformuleren.
Nadelen
- Initiële installatie en leercurve: Laten we eerlijk zijn – Beancount en Fava zijn niet zo plug-and-play als bijvoorbeeld QuickBooks of Mint. Je moet de basis van dubbel boekhouden leren ( als je die nog niet kent ), de syntaxis van Beancount-bestanden en mogelijk wat Python als je diepgaand wilt aanpassen. Deze investering vooraf kan een barrière vormen. Voor niet-technische gebruikers kan het ontmoedigend zijn ( hoewel de interface van Fava veel helpt door een vriendelijkere ervaring te bieden zodra alles is ingesteld ). In tegenstelling hiermee verbergen veel commerciële tools boekhoudkundige concepten achter eenvoudigere interfaces ( wat zowel een voordeel als een nadeel kan zijn ).
- Geen ingebouwde bankkoppeling: Ontwerptechnisch maakt het niet automatisch verbinding met bank-API's ( die vaak eigendom zijn of overeenkomsten vereisen ). Je moet dus handmatig afschriften downloaden of je eigen automatisering opzetten ( via Python-scripts of diensten zoals Plaid die vaak geld kosten ). Voor degenen die gewend zijn aan bankkoppelingen die "gewoon werken", kan dit voelen als een stap terug. Zoals een gebruiker opmerkte bij het proberen van Beancount, vonden ze "geen redelijke manier om bankkoppelingen te krijgen" – dit kan een frustratie zijn, tenzij je bereid bent te programmeren of oplossingen van derden te gebruiken.
- Real-time betekent jouw tijd: Het bereiken van real-time responsiviteit is mogelijk, maar niet standaard. Je moet cron-jobs of triggers configureren zoals beschreven. Als er iets kapotgaat ( bijv. een bank verandert het CSV-formaat ), moet je je eigen importer repareren. Bij een dienst als QuickBooks regelt de leverancier dergelijke wijzigingen. In feite ben je je eigen IT-ondersteuning. Dit is the klassieke afweging bij open-source. Voor een hobbyist is dat misschien prima of zelfs leuk; voor een drukke kleine ondernemer kan het een hinder zijn.
- Schaalbaarheid en prestatiebeperkingen: Bij zeer grote datasets ( vele jaren aan gedetailleerde transacties ) kan Beancount trager worden. Over het algemeen is het efficiënt ( mensen hebben tienduizenden boekingen zonder problemen ). Maar zoals te zien in de HN-thread, moest één gebruiker na 3 jaar de boeken jaarlijks "sluiten" omdat het bestand te groot werd om query's snel te houden. De Beancount v2-code is in Python geschreven en kan wat traag zijn voor enorme hoeveelheden data, hoewel v3 ( in ontwikkeling met een C++-kern ) dit verbetert. Er zijn oplossingen ( bestanden splitsen, Beanpost gebruiken om naar een DB te exporteren, etc. ), maar het is een factor om rekening mee te houden. QuickBooks heeft waarschijnlijk interne schaling en de meeste BI-tools zijn gebouwd op databases die bedoeld zijn voor grote datasets – zij kunnen deze dus waarschijnlijk soepeler afhandelen.
- Feature-lacunes ( ten opzichte van gespecialiseerde software ): Beancount + Fava richt zich op boekhouding en analyse. Het mist enkele aanvullende functies: bijv. geen loonadministratie ( payroll ), geen facturatie ( zonder aangepaste scripts ), geen geïntegreerde belastingformulieren, etc. Als je doel volledig financieel beheer is, moet je dit mogelijk aanvullen met andere tools. Je zou bijvoorbeeld de loonadministratie via een loonlijst-service kunnen doen en alleen de journaalposten importeren. Dat werkt, maar het is niet zo naadloos geïntegreerd als een ERP dat alles in één doet. Voor persoonlijke financiën heeft Beancount geen zaken als ingebouwde aflossingsplanners voor schulden of budgetteringsenveloppen ( hoewel je deze kunt simuleren ). Er wordt van je verwacht dat je zelf inzichten afleidt en vervolgens beslissingen neemt, in plaats van dat er voorschrijvend advies of planningsmodules worden geboden.
- Gebruikersinterface en afwerking: Hoewel Fava erg prettig is, is het niet zo gepolijst of sturend als sommige commerciële producten. Er is geen "wizard" om je door de installatie te loodsen of om te voorkomen dat je fouten maakt. Je moet soms documentatie lezen om te weten hoe je X moet doen. En bepaalde UI-functies die men zou verwachten ( categorisatie via drag-and-drop, ongedaan maken in meerdere stappen, mobiele pushmeldingen, etc. ) zijn niet aanwezig. De Fava-UI verbetert voortdurend ( door bijdragen ), maar wordt gebouwd door een kleine community. Als je gewend bent aan strakke moderne SaaS-UI's, kan Fava wat utilitair aanvoelen ( hoewel sommigen de strakke eenvoud juist verkiezen ). Op mobiel werkt Fava ( vooral voor lees-toegang ), maar het is niet volledig geoptimaliseerd voor kleine schermen; QuickBooks heeft bijvoorbeeld speciale mobiele apps.
- Afhankelijkheid van de community/beheerder: Martin Blais ( de auteur van Beancount ) en bijdragers onderhouden Beancount, en anderen onderhouden Fava. De ontwikkeling kan sporadisch zijn ( zoals normaal is bij OSS ). Hoewel de software nu zeer goed bruikbaar is, moet je, als je een nieuwe functie nodig hebt of als er een bug is, deze mogelijk zelf oplossen of wachten. Bij een betaald product heb je ondersteuning die je kunt bellen ( kwaliteit varieert, maar het is er tenminste ). Dat gezegd hebbende, is de community meestal erg behulpzaam via de mailinglijst of GitHub-issues.
- Boekhoudkundige kennis vereist: Vooral voor zakelijk gebruik moet je weten wat je doet. Beancount zal je niet tegenhouden om een boeking te maken die vanuit boekhoudkundig oogpunt "fout" is ( behalve bij een onbalans of een niet-overeenkomende transactie ). QuickBooks daarentegen heeft vangrails ( en ook verborgen complexiteit zoals automatische tracking van uitgestelde omzet, etc., als je die inschakelt ). Als je niet voorzichtig bent in Beancount, kun je een overlopende post ( accrual ) verpesten en dit pas merken als je een probleem in een rapport ziet. In essentie gaat Beancount ervan uit dat je ofwel de basis van boekhouden beheerst of bereid bent dit te leren. Dit is voor sommigen juist een voordeel ( dwingt je om het goed te doen ), maar een nadeel als je een systeem wilt waar je niet bij hoeft na te denken.
Om de voor- en nadelen samen te vatten: Beancount + Fava biedt ongeëvenaarde controle en aanpassingsvermogen voor degenen die diepgaand met hun financiële gegevens bezig willen zijn, wat het een krachtig hulpmiddel maakt voor datagestuurde inzichten. Het verandert je boeken in een opvraagbare dataset en je rapporten in een uitbreidbare web-app. De prijs voor deze kracht is de inspanning die je investeert in het instellen en onderhouden ervan, en de noodzaak om enigszins zelfredzaam te zijn bij het beheren van je systeem. In tegenstelling tot zoiets als QuickBooks of een BI-suite, die meer begeleiding bieden en bepaalde functies automatisch leveren, geeft Beancount je een gereedschapskist. Als je analytisch ingesteld bent, kan deze gereedschapskist ongelooflijk bevrijdend zijn – je kunt inzichten extraheren die kant-en-klare rapporten misschien nooit zouden tonen. Zoals een gebruiker die zijn Beancount-grootboek in de loop der jaren automatiseerde schreef: “open-source tools (zoals Beancount) voldoen niet aan al mijn behoeften [out-of-the-box]… Ik ben geobsedeerd door het automatiseren van alles… Ik heb gebouwd wat ik nodig had”. Dit vat de aanpak samen: als je bereid bent te bouwen wat je nodig hebt, hoe klein of groot ook, zal Fava/Beancount je ondersteunen en je gegevens nooit voor je verbergen. Voor een datagestuurde mindset is dat een enorm voordeel.
In conclusie is het gebruik van Fava en Beancount voor real-time financiële analyses een beetje als het hebben van je eigen aanpasbare laboratorium voor je financiën. Je krijgt helderheid, flexibiliteit en eigenaarschap die moeilijk te evenaren zijn met eigen ( proprietary ) platformen, waardoor het ideaal is voor degenen die deze aspecten waarderen en bereid zijn wat gemak in te leveren om ze te verkrijgen. Het moderne landschap laat zelfs hybride benaderingen zien – sommigen gebruiken bijvoorbeeld een commerciële tool maar exporteren periodiek naar Beancount voor diepere analyse, of andersom gebruiken Beancount als primaire bron en een BI-tool voor de presentatie. Met de kennis uit dit onderzoek kan men een weloverwogen beslissing nemen of Fava + Beancount aansluit bij hun behoeften en, zo ja, met vertrouwen de mogelijkheden ervan benutten voor rijke, real-time financiële inzichten.
Bronnen:
- Blais, M. ( 2020 ). Beancount Documentatie – Ontwerpprincipes en gebruik. [ Online ]. Beschikbaar: beancount.github.io
- Aumayr, D., Gerstmayr, A. ( 2025 ). Fava Documentatie & GitHub Repository. [ Online ]. Beschikbaar: beancount.github.io/fava/ en github.com/beancount/fava
- LowEndBox. ( 2025 ). “Beancount: Lichtgewicht FOSS dubbel boekhouden... vanaf de opdrachtregel!” LowEndBox Tutorial.
- Fang-Pen Lin. ( 2024 ). “Mijn Beancount-boeken zijn na 3 jaar voor 95% automatisch.” Persoonlijke blogpost.
- Google Groups – Beancount Forum. ( 2023 ). Discussie over Grafana-integratie ( Josh D. en Andreas G. )
- QuickBooks Marketingpagina. “Bankkoppelingen – Begrijp al je transacties in een handomdraai.” Intuit QuickBooks.
- Watt, A. ( 2023 ). “Beancount voor persoonlijke financiën.” Alex Watt Blog.
- Reddit – r/plaintextaccounting. Diverse discussies ( 2021-2023 ) over zakelijk gebruik van Beancount en visualisatie van het grootboek.
- Fava Extensie Documentatie – Help: Extensies.
- fava-dashboards GitHub README – Andreas Gerstmayr’s plugin voor aangepaste dashboards.
- Awesome Beancount-lijst – door de community samengestelde bronnen voor Beancount.