Naar hoofdinhoud springen

Industriespecifieke Opstellingen

Pas uw Beancount-grootboek aan de unieke behoeften van freelancers, kleine bedrijven en persoonlijke financiën aan. Deze handleiding biedt praktische opstellingen, voorbeeldfragmenten en inzichten in effectief financieel bijhouden.

Voorbeeldconfiguraties voor Freelancers, Kleine Bedrijven en Persoonlijke Financiën

In deze handleiding verkennen we hoe u een Beancount-grootboek kunt aanpassen voor verschillende behoeften: een freelancer, een klein boetiekbedrijf en persoonlijke huishoudfinanciën. Elk scenario heeft een unieke rekeningstructuur en overwegingen. We leggen de redenering achter elke opstelling uit, geven voorbeeld-BeanCount-fragmenten en benadrukken nuttige functies (zoals aangepaste tags en geautomatiseerde imports) die het bijhouden vergemakkelijken. De toon is instructief maar benaderbaar – of u nu een ontwikkelaar, tech-savvy professional of financiële liefhebber bent, deze voorbeelden helpen u Beancount in de praktijk toe te passen.

Freelancers

Freelancers (zoals softwareontwikkelaars of grafisch ontwerpers) hebben vaak te maken met meerdere klanten en projecten. Een eenvoudige Beancount-opstelling kan helpen om inkomsten van elke klant, bedrijfskosten (inclusief eventuele onderaannemers) en geld dat opzij wordt gezet voor belastingen bij te houden. Het doel is om het overzichtelijk te houden zodat het meeschaalt naarmate uw freelancebedrijf groeit, zonder onnodige complexiteit.

Belangrijke rekeningen voor een freelancer: Een freelance-grootboek scheidt doorgaans zakelijke financiën van persoonlijke financiën. U kunt bijvoorbeeld gebruiken:

  • Assets:Business:Checking – Een zakelijke betaalrekening voor alle klantbetalingen en bedrijfskosten.
  • Assets:Business:TaxSavings – Een spaarrekening om een deel van de inkomsten opzij te zetten voor belastingbetalingen (aangezien geen werkgever belasting voor u inhoudt).
  • Income:Client:Naam – Inkomstenrekeningen voor klantbetalingen. U kunt subrekeningen per klant aanmaken (bijv. Income:Client:ACME), of één Income:Freelance-rekening gebruiken met klantnamen als tags in transacties.
  • Expenses:Business:Contractors – Voor betalingen aan onderaannemers of uitbesteed werk.
  • Expenses:Business:Software (en andere categorieën zoals Travel, Supplies) – Voor reguliere bedrijfskosten (software-abonnementen, apparatuur, reizen naar klanten, enz.).
  • Equity:OwnerDraw – (Optioneel) Om overboekingen van de winst van het bedrijf naar uzelf persoonlijk vast te leggen. Dit helpt om zakelijke gelden van persoonlijke gelden te onderscheiden wanneer u uzelf uitbetaalt.

Redenering: Deze structuur zorgt ervoor dat al het zakelijke geld in specifieke rekeningen wordt vastgelegd. Inkomsten van elke klant worden geregistreerd (waardoor het gemakkelijk is om te zien wie uw belangrijkste klanten zijn), en uitgaven worden gecategoriseerd voor belastingaangifte. Het opzijzetten van belastingen op een aparte spaarrekening (of het vastleggen van een schuld voor verschuldigde belasting) voorkomt dat u geld uitgeeft dat nog aan de belastingdienst verschuldigd is. Het grootboek blijft eenvoudig: als u nieuwe klanten of uitgavecategorieën toevoegt, kunt u nieuwe rekeningen of tags toevoegen zonder alles te reorganiseren. Een veelgemaakte fout is het mengen van persoonlijke en zakelijke transacties in één rekening; door een aparte zakelijke betaalrekening (en bijbehorende activarekening) te gebruiken, worden afstemming en rapportage eenvoudiger. Een andere valkuil is het vergeten om contante overboekingen voor belastingen of eigen uitbetalingen vast te leggen – door rekeningen zoals TaxSavings en OwnerDraw te gebruiken, wordt elke euro verantwoord.

Beancount-functies om te benadrukken: Tags en metadata zijn zeer nuttig voor freelancers. U kunt bijvoorbeeld transacties taggen met een project- of factuurnummer, of een metadata-veld gebruiken om de klantnaam te noteren als u geen aparte inkomstenrekeningen per klant gebruikt. Dit maakt het gemakkelijk om transacties voor een specifieke klant of project te filteren (bijv. alle uitgaven met tag #ProjectX optellen). Daarnaast kunnen Beancount's geautomatiseerde importeurs gegevensinvoer vereenvoudigen – u kunt bijvoorbeeld een importeur instellen voor uw bank- of creditcardafschriften om transacties in uw grootboek te laden en vervolgens de juiste uitgaven- of inkomstenrekening toe te voegen. Dit bespaart tijd wanneer u veel kleine transacties heeft (zoals software-abonnementen of reiskosten).

Voorbeeld van een freelancer-grootboekfragment

Hieronder staat een vereenvoudigd Beancount-fragment voor een freelance ontwikkelaar. Het toont het openen van een paar belangrijke rekeningen, een inkomende betaling van een klant, een betaling aan een onderaannemer, een typische bedrijfskost en het overboeken van geld naar een belasting spaarrekening. (In de praktijk zou u ook andere uitgaven zoals reizen of apparaatkosten vastleggen.)

1970-01-01 open Assets:Business:Checking
1970-01-01 open Assets:Business:TaxSavings
1970-01-01 open Income:Client:ACME
1970-01-01 open Expenses:Business:Contractors
1970-01-01 open Expenses:Business:Software
 
; Client income – payment for an invoice
2025-08-15 * "Invoice payment from ACME Corp"
  invoice: "INV-2025-08-15"
  Assets:Business:Checking       5000 USD
  Income:Client:ACME           -5000 USD
 
; Regular expense – e.g. software subscription for the business
2025-08-05 * "GitHub Subscription"
  Expenses:Business:Software       15 USD
  Assets:Business:Checking        -15 USD
 
; Contractor expense – paying a subcontractor for help
2025-08-20 * "Contractor payment – Jane Doe"
  Expenses:Business:Contractors   2000 USD
  Assets:Business:Checking      -2000 USD
 
; Tax withholding – moving money to tax savings
2025-08-31 * "Set aside Q3 taxes" #tax
  Assets:Business:TaxSavings     1500 USD
  Assets:Business:Checking     -1500 USD

Laten we opsplitsen wat er gebeurt:

  • We openen de noodzakelijke rekeningen bovenaan (met een startdatum). Beancount vereist dat elke rekening wordt geopend voordat deze wordt gebruikt – een boeking naar een niet-gedeclareerde rekening is een laadfout – dus deze open-richtlijnen zijn verplicht, niet optioneel. De Assets:Business:Checking- en Assets:Business:TaxSavings-rekeningen bevatten USD-saldi; inkomsten- en uitgavenrekeningen kunnen zonder valuta in de open-richtlijn worden gelaten, omdat ze transactievaluta (in dit geval USD) overerven.
  • Factuurbetaling van klant: Op 2025-08-15 wordt een klantbetaling van $5.000 voor een factuur geregistreerd. We crediteren Income:Client:ACME (inkomsten nemen toe met een credit in dubbel boekhouden) en debiteren de betaalrekening. Een metadata-veld invoice: "INV-2025-08-15" wordt toegevoegd om het factuurnummer te noteren – dit is optioneel maar laat zien hoe u extra informatie aan een transactie kunt koppelen. U kunt deze transactie ook taggen met #ACME of #client-ACME voor snelle filtering. Als u meerdere klanten heeft, kunt u een algemene Income:Clients-rekening gebruiken en vertrouwen op dergelijke metadata of het Payee-veld om klanten te onderscheiden, in plaats van veel subrekeningen aan te maken.
  • Bedrijfskost (software): Op 2025-08-05 registreren we een uitgave van $15 voor een software-abonnement (bijv. GitHub voor privé-repositories of andere diensten). De boeking gaat naar Expenses:Business:Software en vermindert de zakelijke betaalrekening. Kleine terugkerende kosten zoals deze kunnen worden getagd (bijv. #recurring of #subscription). In dit geval maakt de rekeningnaam zelf (Software) het duidelijk.
  • Betaling aan onderaannemer: Op 2025-08-20 heeft de freelancer een onderaannemer (Jane Doe) $2.000 betaald. Dit wordt vastgelegd als een uitgave in Expenses:Business:Contractors en contant uit de betaalrekening. U kunt de naam van de onderaannemer in de narratie vermelden (zoals we deden) of als metadata-veld (bijv. contractor: "Jane Doe"). Dit behoudt een audittrail van wie u heeft betaald en waarom (nuttig voor belastingaangifte of budgettering).
  • Overboeking naar belastingreserve: Op 2025-08-31 boekt de freelancer $1.500 over van de betaalrekening naar een speciale belasting spaarrekening. We hebben deze transactie getagd met #tax voor zichtbaarheid. Dit is geen uitgave (u verplaatst alleen uw eigen geld), dus het gaat tussen twee activarekeningen. Door dit elke maand of kwartaal te doen, bouwt u fondsen op om belastingen te dekken. Wanneer het tijd is om daadwerkelijk belasting te betalen aan de overheid, registreert u een uitgave (bijv. Expenses:Taxes) en een aftrek van de TaxSavings-rekening. Een veelgemaakte fout is om deze overboeking als uitgave te behandelen in uw rapporten – onthoud, het is geen uitgave, maar een voorzorgsreserve.

Samenvatting: Een Beancount-grootboek voor freelancers benadrukt eenvoud en duidelijkheid. Alle inkomsten en uitgaven die verband houden met het bedrijf worden methodisch vastgelegd. Door betekenisvolle rekeningnamen en af en toe tags/metadata te gebruiken, kunt u eenvoudig rapporten genereren per klant of per uitgavecategorie (bijv. totale inkomsten per klant, totale uitgaven aan onderaannemers dit jaar). Deze opstelling is schaalbaar – u kunt nieuwe klanten of uitgavecategorieën toevoegen naarmate uw bedrijf evolueert. Met functies zoals geautomatiseerde imports (om banktransacties binnen te halen) en aangepaste tagging voor projecten of facturen, kan Beancount de boekhoudkundige overhead voor freelancers aanzienlijk verminderen en tegelijkertijd een duidelijk beeld geven van de financiën op elk moment.

Kleine Bedrijven

Overweeg vervolgens een klein boetiek-e-commercebedrijf – bijvoorbeeld een online winkel die handgemaakte goederen verkoopt. Dit scenario voegt complexiteit toe zoals voorraadbeheer, kostprijs van verkochte goederen (COGS) en het omgaan met online betalingsverwerkers. Beancount kan dit aan met een doordachte rekeningstructuur en een consistente transactiemethode. We gebruiken een geval waarin het bedrijf producten in voorraad houdt, verkopen via een online platform (zoals Shopify met Stripe voor betalingen) registreert en typische bedrijfskosten logt.

Belangrijke rekeningen voor een boetiek-e-commercebedrijf: Naast basis bank- en uitgavenrekeningen, bevat een retail-grootboek rekeningen om voorraad en verkoopstromen te volgen:

  • Assets:Bank:Checking – De zakelijke betaalrekening van het bedrijf (voor het betalen van leveranciers, operationele kosten en het ontvangen van overboekingen van betalingsverwerkers).
  • Assets:Stripe:Balance (of Assets:PayPal, enz.) – Een tussenrekening voor gelden die via online betalingen zijn ontvangen maar nog niet op de bank zijn bijgeschreven. Wanneer een klant bijvoorbeeld via Stripe betaalt, kan het geld in een Stripe-account staan voordat het in batches naar uw bank wordt overgemaakt.
  • Assets:Inventory:Product – Voorraadrekeningen voor uw producten. U kunt elk product (of productcategorie) behandelen als een grondstof in Beancount om de hoeveelheden in voorraad bij te houden. Bijvoorbeeld, Assets:Inventory:Widgets kan de hoeveelheid "Widget"-artikelen bevatten die momenteel op voorraad zijn, gewaardeerd tegen inkoopprijs.
  • Income:Sales – Registreert omzet uit productverkopen. U kunt subrekeningen gebruiken voor verschillende verkoopkanalen (bijv. Income:Sales:Online vs. Income:Sales:InStore) als het bedrijf meerdere kanalen heeft, maar we houden het eenvoudig met één verkoopinkomstenrekening.
  • Expenses:COGS – Kostprijs van verkochte goederen, om de kostprijs van voorraadartikelen vast te leggen wanneer ze worden verkocht. Deze rekening toont effectief hoeveel de verkochte voorraad u (als bedrijfseigenaar) heeft gekost over een periode. Het is een belangrijk onderdeel voor het berekenen van de brutowinst.
  • Expenses:Fees – Voor betalingsverwerkingskosten en platformkosten (Stripe-kosten, Shopify-kosten, PayPal-kosten, enz. kunnen hier allemaal worden vastgelegd). U kunt dit opsplitsen in meer gedetailleerde rekeningen (bijv. Expenses:Fees:Stripe en Expenses:Fees:Shopify) indien gewenst, maar één rekening kan voldoende zijn voor alle transactiekosten.
  • Expenses:Operating – Algemene bedrijfskosten die niet direct verband houden met COGS, zoals marketing, webhosting, software, verzendmaterialen, enz. Deze kunnen worden onderverdeeld in subrekeningen (bijv. Expenses:Marketing, Expenses:WebHosting, Expenses:Shipping) om verschillende kostenplaatsen te analyseren.
  • Liabilities:SalesTax – (Optioneel, indien van toepassing) Als het bedrijf btw of omzetbelasting moet innen op verkopen, houdt deze schuldrekening de geïnde belasting bij die nog niet aan de overheid is afgedragen. Elke verkoop splitst dan het belastingdeel naar deze rekening. Dit zorgt ervoor dat geïnde belasting niet als omzet wordt geteld en gereserveerd blijft voor betaling aan de belastingdienst.
  • Equity:OwnerEquity – (Optioneel) Vertegenwoordigt de investering van de eigenaar en ingehouden winst. Bij de oprichting van het bedrijf zou eventuele initiële financiering door de eigenaar hier worden gecrediteerd (met een debet naar de bank of voorraad als ze contant geld of voorraad hebben bijgedragen). Ook als de eigenaar winst opneemt (uitkeringen), kan dat tegen deze eigenvermogensrekening worden geboekt. Dit houdt de balans in evenwicht, maar voor dagelijkse operaties komt het niet vaak aan bod.

Redenering: Deze opstelling scheidt de stroom van goederen en geld. Voorraadaankopen worden aanvankelijk op de balans vastgelegd (als activa) in plaats van onmiddellijk als uitgaven. Alleen wanneer u producten verkoopt, boekt u hun kostprijs (COGS), waardoor de omzet wordt afgestemd op de gerelateerde uitgave voor een correcte winstberekening. Inkomsten uit verkopen worden geregistreerd tegen de brutoverkoopprijs, terwijl kosten apart worden vastgelegd, zodat u zowel bruto-omzet als betaalde kosten (en dus netto-omzet) kunt zien. Het gebruik van een tussenrekening zoals Assets:Stripe:Balance helpt bij het afstemmen van stortingen – geld gaat van Stripe naar uw bank in grote bedragen, en u kunt die overboekingen zonder verwarring vastleggen. Een veelgemaakte fout voor nieuwe winkeleigenaren is het verwaarlozen van de juiste voorraadadministratie – bijvoorbeeld door alle voorraadaankopen onmiddellijk als uitgave te boeken. Dat kan prima zijn voor cashflow-tracking, maar het vertekent uw winst: u ziet er minder winstgevend uit in maanden waarin u veel inkoopt en winstgevender in maanden waarin u verkoopt, ook al is de voorraad eerder gekocht. Door een voorraadactivarekening en COGS te gebruiken, stemt u de kostprijs af op de verkoop. Een andere valkuil is het niet verwerken van kosten of terugboekingen, waardoor uw bank- of Stripe-saldi niet overeenkomen met uw geregistreerde inkomsten. We voorkomen dat door kosten expliciet vast te leggen en de Stripe-activarekening te gebruiken om bij te houden wat Stripe verschuldigd is of heeft uitgekeerd.

Beancount-functies om te benadrukken: Voorraadbeheer in Beancount maakt gebruik van de mogelijkheid om grondstoffen en kosten te verwerken. Elk product kan een grondstofsymbool zijn (bijv. WIDGET), waardoor u zowel aantal als eenheidskosten kunt vastleggen. Wanneer u artikelen verkoopt, specificeert u welke kostpartij u vermindert, en Beancount put daaruit – zie voorraad en boekingsmethoden voor de volledige set. De standaardboekingsmethode is STRICT, die vereist dat de partij ondubbelzinnig is; daarom specificeert het voorbeeld dit expliciet met {10 USD}. Om Beancount de partij automatisch te laten kiezen (oudste eerst), kunt u de rekening aanmelden voor FIFO in de open-richtlijn: open Assets:Inventory:Widgets WIDGET "FIFO". We gebruiken het expliciete STRICT-formulier in het voorbeeld. U kunt ook metadata of links gebruiken om verkopen en hun bijbehorende COGS-boekingen te koppelen (bijv. hetzelfde ordernummer in beide transacties, of een gedeelde tag zoals #order1001 op de verkoop en de voorraadvermindering, zodat u gemakkelijk kunt controleren of elke verkoop een bijbehorende COGS-boeking heeft). Geautomatiseerde imports kunnen hier ook helpen: u kunt een script gebruiken om verkoopgegevens van Shopify of Stripe-uitbetalingsrapporten te importeren, of uw bankafschriften importeren om uitgaventransacties en uitbetalingen op te vangen. Door deze repetitieve gegevensinvoer te automatiseren, besteedt u meer tijd aan analyse en minder aan het typen van cijfers.

Voorbeeld van een kleinbedrijf-grootboekfragment

Hieronder staat een beknopt Beancount-voorbeeld voor ons boetiek-e-commercebedrijf. We illustreren het kopen van voorraad, het registreren van een verkoop (met de betalingsverwerkingskosten netto verwerkt) en het vastleggen van de kostprijs van verkochte goederen voor die verkoop. In de praktijk zou u ook andere uitgaven (zoals platformkosten, advertentiekosten, enz.) op dezelfde manier vastleggen als het kostenvoorbeeld hieronder. We nemen USD als valuta en een product genaamd "Widget" dat we als grondstof in voorraad volgen.

1970-01-01 open Assets:Bank:Checking
1970-01-01 open Assets:Stripe:Balance
1970-01-01 open Assets:Inventory:Widgets WIDGET
1970-01-01 open Income:Sales
1970-01-01 open Expenses:COGS
1970-01-01 open Expenses:Fees
 
; Purchase inventory (50 units of Widget at $10 cost each)
2025-03-10 * "Bought 50 Widgets from SupplierCo"
  Assets:Inventory:Widgets      50 WIDGET {10 USD}
  Assets:Bank:Checking        -500 USD
 
; Sale to customer (Order #1001 via online store, 2 Widgets sold)
2025-04-05 * "Sale Order #1001 (2x Widget via Shopify)"
  Assets:Stripe:Balance         58 USD   ; net payment received after fees
  Expenses:Fees                  2 USD   ; processing fee (Stripe)
  Income:Sales                 -60 USD   ; revenue for 2 Widgets (@ $30 each)
 
; Cost of goods sold for the above sale (2 Widgets at $10 cost each)
2025-04-05 * "COGS for Order #1001 (2x Widget)"
  Expenses:COGS                 20 USD
  Assets:Inventory:Widgets     -2 WIDGET {10 USD}

Hier is wat er stap voor stap gebeurt:

  • Rekeningen openen: We openen de betaalrekening, de Stripe-saldo-rekening, een voorraadrekening voor Widgets (gedeclareerd met grondstof WIDGET om eenheden bij te houden), en de kerninkomsten- en uitgavenrekeningen (Sales, COGS, Fees). Door Assets:Inventory:Widgets WIDGET te declareren, geven we aan dat deze rekening eenheden van de grondstof "WIDGET" zal bevatten. Dit zorgt ervoor dat Beancount weet dat het grondstofeenheden moet verwachten, en we kunnen kosten aan die eenheden koppelen.

  • Voorraadaankoop: Op 2025-03-10 kopen we voorraad – 50 eenheden Widget van een leverancier tegen $10 per stuk, met een totale kostprijs van $500. De transactie debiteert Assets:Inventory:Widgets met 50 WIDGET {10 USD}. Dit betekent dat 50 eenheden van grondstof WIDGET, elk met een vastgelegde kostprijs van 10 USD, aan de voorraadrekening worden toegevoegd. De credit is Assets:Bank:Checking -500 USD (contante uitgave). Merk op dat we hier geen uitgavenrekening direct raken; we kapitaliseren de aankoop als voorraadactief. Nu heeft onze balans 50 Widgets gewaardeerd op $500 in totaal in voorraad. (Als u een saldorapport zou draaien, zou de voorraadrekening 50 WIDGET-eenheden tonen met een waarde van $500.)

  • Verkoop registreren (Order #1001): Op 2025-04-05 registreren we een verkoop van 2 Widgets via onze online winkel. De narratie bevat een ordernummer voor de duidelijkheid. Deze transactie omvat drie boekingen:

    • Assets:Stripe:Balance 58 USD: geld ontvangen uit de verkoop, maar momenteel in Stripe (netto na kosten). Stel dat de klant $60 in totaal heeft betaald; Stripe heeft $2 kosten ingehouden, en $58 staat nu op ons Stripe-account (om later naar onze bank te worden overgemaakt). We registreren de $58 als een actief in Stripe.
    • Expenses:Fees 2 USD: de $2 kosten worden als bedrijfskost vastgelegd. Dit zorgt ervoor dat onze winst-en-verliesrekening die kosten weerspiegelt, en dat ons Stripe-actief plus de kostenuitgave samen gelijk zijn aan de totale klantbetaling.
    • Income:Sales -60 USD: we registreren $60 aan omzet uit verkopen. (Inkomstenrekeningen nemen toe met credits, vandaar het negatieve bedrag in de notatie van Beancount.)

    Na deze transactie is het netto-effect: Income:Sales omhoog met 60, een extra $58 actief (vordering op Stripe) en $2 kosten voor de vergoeding. Als Stripe later de $58 op onze bank stort, zouden we een eenvoudige overboeking vastleggen zoals Assets:Bank:Checking 58 USD / Assets:Stripe:Balance -58 USD op de datum van uitbetaling – dit verplaatst het actief van de Stripe-rekening naar de bank, zonder invloed op inkomsten of uitgaven (alleen het verschuiven van activa). We hebben die overboeking hierboven niet getoond, maar het is een belangrijke stap in echte boekhouding om uw Stripe-rekening op $0 te houden nadat alles is overgemaakt.

  • COGS registreren voor de verkoop: Ook op 2025-04-05 hebben we een aparte transactie om de kostprijs van de 2 verkochte Widgets vast te leggen. We debiteren Expenses:COGS 20 USD en crediteren Assets:Inventory:Widgets -2 WIDGET {10 USD}. Dit verwijdert 2 eenheden uit de voorraad (elk had een kostprijs van $10 zoals eerder vastgelegd, dus $20 in totaal). We specificeren {10 USD} om Beancount te vertellen uit welke kostpartij het moet putten – in dit geval komt het overeen met de partij die we op 2025-03-10 hebben toegevoegd. Nu zal de voorraadrekening 48 Widgets bevatten, met een bijbehorende kostprijs van $480. De $20 wordt overgeboekt naar de COGS-uitgave, die op de winst-en-verliesrekening verschijnt, waardoor de brutowinst wordt verminderd met de kostprijs van die goederen. (Als we dit niet hadden vastgelegd, zou ons inkomen worden overschat ten opzichte van de uitgaven.) We gebruiken een aparte transactie voor de duidelijkheid, maar het is ook mogelijk om de verkoop en COGS in één transactie met meerdere regels te combineren. Sommigen verkiezen de opsplitsing zoals getoond voor leesbaarheid en afstemming (u kunt elke COGS-boeking duidelijk koppelen aan een order). We hebben ook het ordernummer in de narratie herhaald om gemakkelijk te zien dat deze COGS-boeking overeenkomt met Order #1001. Een goede gewoonte is om ervoor te zorgen dat elke verkoop een bijbehorende COGS-boeking heeft wanneer voorraad betrokken is – het missen ervan zou betekenen dat uw voorraadtellingen niet kloppen. Een valkuil om te vermijden is het vergeten om voorraad te verminderen bij een verkoop, wat uw balans met fictieve voorraad zou laten en uw uitgaven zou onderschatten. Door gebruik te maken van Beancount's voorraadfuncties (de {} kostnotatie) helpt het om fouten op te vangen als u meer eenheden probeert te verwijderen dan u op voorraad heeft (de software geeft dan een foutmelding).

Samenvatting: Een klein bedrijf dat Beancount gebruikt, kan een verrassend robuust boekhoudsysteem onderhouden. Door rekeningen te structureren om waar geld is, waar het vandaan komt en hoe kosten stromen te volgen, krijgt u een nauwkeurig beeld van winstgevendheid. Ons voorbeeld toonde hoe u voorraad en verkopen kunt afhandelen; op dezelfde manier zou u andere transacties vastleggen, zoals het betalen van een internetrekening (Expenses:Operating:Internet vs. Assets:Bank:Checking), het ontvangen van een lening of investering (Assets:Bank vs. Liabilities:Loan of Equity:OwnerEquity), of het betalen van omzetbelasting (Liabilities:SalesTax vs. Assets:Bank wanneer afgedragen). De sleutel is consistentie: registreer elk type transactie met hetzelfde patroon, en Beancount houdt de boeken in evenwicht. Met functies zoals geautomatiseerde gegevensimport (bijv. het binnenhalen van maandelijkse Stripe-kosten of banktransacties) en aangepaste tags/links (om gerelateerde transacties zoals verkopen en terugboekingen te correleren), kan het systeem zowel flexibel als efficiënt zijn. Het resultaat is een georganiseerd grootboek dat kan meeschalen naarmate het bedrijf groeit – u kunt nieuwe productvoorraadrekeningen, nieuwe uitgavecategorieën of extra inkomstenstromen (bijv. een nieuw online marktplaatskanaal) toevoegen zonder het hele systeem te herzien.

Persoonlijke Financiën

Tot slot bekijken we het gebruik van Beancount voor persoonlijke of huishoudelijke financiën. Deze opstelling is voor een individu of gezin dat dagelijkse uitgaven, bankrekeningen, creditcards, leningen en investeringen beheert. De nadruk ligt op het bijhouden van waar uw geld naartoe gaat (uitgaven), waar het vandaan komt (inkomsten) en hoe het wordt gespaard of geïnvesteerd (activa en passiva). Beancount kan budgetteringsapps vervangen of aanvullen door een transparante en aanpasbare weergave van uw financiën te bieden, met de nauwkeurigheid van dubbel boekhouden die ervoor zorgt dat niets dubbel wordt geteld of vergeten.

Belangrijke rekeningen voor persoonlijke financiën: Een persoonlijk financieel grootboek bevat doorgaans een verscheidenheid aan activa-, passiva-, inkomsten- en uitgavenrekeningen:

  • Assets:Bank:Checking – Uw hoofd betaalrekening voor inkomstenstortingen en rekeningbetalingen.
  • Assets:Bank:Savings – Spaarrekening voor noodfonds of specifieke doelen. (U kunt meerdere spaar- of beleggingsrekeningen hebben – elk kan een activarekening zijn).
  • Assets:Cash – Als u contant geld gebruikt voor uitgaven, kunt u een contante rekening hebben om opnames en contante uitgaven bij te houden.
  • Assets:Investments:Makelaar – Beleggingsrekeningen, zoals een brokerage, pensioen 401(k)/IRA, enz. Deze kunnen verder worden onderverdeeld per beleggingstype of gewoon worden samengevoegd als één rekening per instelling. Bijvoorbeeld, Assets:Investments:VanguardIRA of Assets:Investments:Robinhood. Het volgen van beleggingen kan ook grondstoffen voor aandelen of fondsen omvatten, maar als dit te gedetailleerd is, kunt u eenvoudig bijdragen en rekeningsaldi volgen.
  • Liabilities:CreditCard:Naam – Eén rekening per creditcard (bijv. Liabilities:CreditCard:Visa of per banknaam). Alle aankopen op de kaart worden hier vastgelegd (met een gelijke uitgave), en betalingen aan de kaart zijn overboekingen die deze schuld verminderen.
  • Liabilities:Loan:Naam – Eventuele leningen (studielening, hypotheek, autolening) kunnen worden gevolgd met een passiefrekening. U registreert de hoofdsom en elke betaling splitst rente (uitgave) en hoofdsom (schuldvermindering). Dit is een geavanceerd aspect, maar belangrijk voor een volledig financieel beeld.
  • Income:Salary (en/of Income:Bonus, Income:Interest, enz.) – Om salarisbetalingen, bonussen, rente-inkomsten, dividenden, enz. vast te leggen. Inkomstenrekeningen laten u uw totale inkomsten uit verschillende bronnen zien. (Als uw salaris al belastingen heeft ingehouden, kunt u de nettostorting op de betaalrekening als inkomen vastleggen, of bruto-inkomen en belastinginhoudingen als uitgave of passief – verschillende benaderingen bestaan, maar velen registreren voor persoonlijke boeken gewoon het nettoloon als inkomen voor eenvoud.)
  • Expenses: Doorgaans talrijk, verdeeld in categorieën die voor u betekenisvol zijn. Bijvoorbeeld: Expenses:Housing:Rent, Expenses:Food:Groceries, Expenses:Food:DiningOut, Expenses:Utilities:Electricity, Expenses:Entertainment, Expenses:Travel, Expenses:Taxes, Expenses:Misc – welke categorieën uw bestedingspatroon ook weerspiegelen. U kunt zo gedetailleerd of algemeen zijn als u wilt. De rekeninghiërarchie helpt bij het aggregeren (bijv. Expenses:Food zal zowel boodschappen als uit eten gaan totaliseren). Een veelgebruikte praktijk is een hiërarchie voor hoofdcategorieën (Huisvesting, Voedsel, Vervoer, Gezondheidszorg, enz.).
  • Equity:Opening-Balances – Wordt gebruikt om rekeningsaldi te initialiseren wanneer u uw grootboek start (zodat alle activa minus passiva gelijk zijn aan uw beginnend nettovermogen, vastgelegd in eigen vermogen). Na de start kunt u ook Equity:Retained-Earnings of iets dergelijks gebruiken om het gecumuleerde nettoresultaat weer te geven (hoewel u bij persoonlijke financiën doorgaans gewoon inkomsten minus uitgaven laat doorrollen naar het nettovermogen). Eigenvermogensrekeningen zijn minder zichtbaar in het dagelijks gebruik, maar zorgen ervoor dat de boekhoudkundige vergelijking in evenwicht is.

Redenering: De persoonlijke financiële opstelling draait om het vastleggen van uw financiële leven in één coherent systeem. Elke rekening hierboven dient om verschillende soorten financiën te scheiden, zodat u vragen kunt beantwoorden zoals "Hoeveel heb ik deze maand aan eten uitgegeven?" (door Expenses:Food:* op te tellen), "Hoeveel schuld heb ik nog?" (door naar de passiefrekeningen te kijken), of "Wat is mijn nettovermogen?" (Activa minus Passiva). Een groot voordeel van dubbel boekhouden hier is nauwkeurigheid: wanneer u bijvoorbeeld een boodschappenrekening van $100 op uw creditcard zet, registreert u dit als een uitgave en een toename van de schuld. Later, wanneer u de creditcard betaalt, registreert u een overboeking van uw bank naar de kaart – dit betaalt de schuld af, maar telt de boodschappenuitgave niet dubbel (die al is vastgelegd). Een veelgemaakte fout zonder dubbel boekhouden is om de creditcardbetaling zelf als uitgave te behandelen, waardoor de $100 effectief twee keer wordt geteld. Beancount voorkomt dit door ontwerp. Een andere valkuil om te vermijden is het niet afstemmen van rekeningen: met Beancount kunt u saldo-asserties of de balance-richtlijn gebruiken om ervoor te zorgen dat bijvoorbeeld uw betaalrekeningsaldo in het grootboek overeenkomt met het werkelijke bankafschrift. Dit vangt missende of dubbele boekingen op.

Beancount-functies om te benadrukken: Voor persoonlijke financiën zijn geautomatiseerde imports bijzonder nuttig vanwege het volume aan transacties. U kunt Beancount's importer-framework of community-scripts gebruiken om banktransacties, creditcardafschriften en zelfs beleggingstransacties te importeren uit CSV-, OFX- of API-bronnen. Dit betekent dat u minder tijd besteedt aan het handmatig typen van elke koffieaankoop. Aangepaste tags zijn nuttig voor het doorsnijden van gegevens op manieren die rekeningen misschien niet kunnen. Tag bijvoorbeeld alle vakantiegerelateerde uitgaven met #vakantie2025, ongeacht of het vluchten, hotels of dineren zijn – dan kunt u eenvoudig de totale kosten van die vakantie opvragen. Of tag bepaalde uitgaven als #aftrekbaar als u later fiscaal aftrekbare items wilt volgen. U kunt ook terugkerende rekeningen taggen (bijv. #maandelijks) om al uw abonnementen en vaste kosten jaarlijks te beoordelen. Metadata kan worden gebruikt om notities of bonnetjes te koppelen (bijv. receipt: "pad/naar/bestand.jpg" om aan te geven dat u een gescande bon heeft, of category: "Werkuitgave" voor vergoedbare items). De flexibiliteit van tags en metadata betekent dat u het systeem kunt aanpassen aan uw persoonlijke volgbehoeften zonder tientallen extra rekeningen te creëren.

Probeer de converter voordat u een importer schrijft

Voer de bankexport van vorige maand door de CSV naar Beancount converter, of een .ofx, .qfx of .qif-download door OFX & QIF naar Beancount. Voor de meeste persoonlijke grootboeken is dat voldoende, en het toont u de vorm van de boekingen die een aangepaste importer zou moeten produceren.

Voorbeeld van een persoonlijk financieel grootboekfragment

Hieronder staat een voorbeeldfragment van een persoonlijk Beancount-grootboek met een paar typische transacties: een dagelijkse uitgave op een creditcard, een terugkerende rekening betaald vanaf de betaalrekening, en een bijdrage aan een pensioenbeleggingsrekening. (Voor de beknoptheid nemen we aan dat er een initiële opstelling is gedaan om rekeningen te openen en salarisinkomsten vast te leggen; hier richten we ons op de uitgaven- en spaarkant.)

1970-01-01 open Assets:Bank:Checking
1970-01-01 open Liabilities:CreditCard:Visa
1970-01-01 open Expenses:Food:Coffee
1970-01-01 open Expenses:Housing:Rent
1970-01-01 open Assets:Investment:401k
 
; Daily spending example (coffee on a credit card)
2025-09-10 * "Starbucks Coffee" #daily
  Expenses:Food:Coffee       5.50 USD
  Liabilities:CreditCard:Visa   -5.50 USD
 
; Recurring monthly bill (rent paid from checking)
2025-09-01 * "Apartment Rent September" #recurring
  Expenses:Housing:Rent    1200 USD
  Assets:Bank:Checking    -1200 USD
 
; Retirement contribution (transfer from checking to 401k investment)
2025-09-15 * "401(k) Contribution" #retirement
  Assets:Investment:401k    500 USD
  Assets:Bank:Checking     -500 USD

Laten we deze transacties interpreteren:

  • Rekeningen openen: We openen de betaalrekening, een Visa-creditcardrekening, een Koffie-uitgavenrekening (als voorbeeld van een subcategorie van Voedseluitgaven), een Huur-uitgavenrekening en een 401k-beleggingsrekening. In een echt grootboek zou u alle rekeningen openen die u van plan bent te gebruiken (spaarrekeningen, andere uitgavecategorieën, inkomsten, enz.). We beperken ons hier tot wat nodig is voor het fragment.
  • Dagelijkse uitgave – koffie: Op 2025-09-10 wordt een koffieaankoop van $5,50 geregistreerd. De uitgave wordt gecategoriseerd onder Expenses:Food:Coffee, en omdat deze met een Visa-creditcard is betaald, crediteren we (verhogen) Liabilities:CreditCard:Visa. De tag #dagelijks wordt toegevoegd om aan te geven dat dit een dagelijkse discretionaire uitgave is – misschien wilt u later al uw dagelijkse discretionaire uitgaven filteren. Merk op dat de creditcardrekening na deze transactie een saldo van $5,50 toont (wat betekent dat u $5,50 aan Visa verschuldigd bent). Als u contant had betaald voor deze koffie, zou de transactie in plaats daarvan Assets:Cash crediteren (waardoor het contante geld dat u bij de hand heeft afneemt). Als het een betaalkaart was, zou het Assets:Bank:Checking crediteren. De mechanismen zijn vergelijkbaar, alleen de rekeningen verschillen.
  • Terugkerende rekening – huur: Op 2025-09-01 registreren we de betaling van de maandelijkse huur van $1.200. Dit komt uit de betaalrekening (creditering van Assets:Bank:Checking) en wordt gecategoriseerd als Expenses:Housing:Rent. We hebben het getagd met #terugkerend om aan te geven dat dit een terugkerende rekening is. In een volledig grootboek zou u elke maand een soortgelijke boeking hebben. (Beancount heeft geen ingebouwde functie voor automatische terugkerende transacties, maar u kunt dit bereiken met scripts of door elke maand een kopie te plakken. Tags helpen om later te controleren of u geen maand heeft gemist of om de huur van een jaar snel op te tellen.) Sommige gebruikers gebruiken de periodieke transactie-functie via het Beancount-importerframework om deze automatisch te genereren, maar dat is een geavanceerd gebruik dat buiten de scope van dit fragment valt. De sleutel is dat deze transactie duidelijk laat zien waar uw geld naartoe gaat – een uitgave voor huisvesting – en uw verlaagde banksaldo. Een valkuil om op te letten: als u uitgaven deelt of huisgenoten heeft, betaalt u misschien slechts een deel van de huur; in dat geval kunt u de transactie splitsen in uw deel en het deel dat iemand anders betaalt (mogelijk het andere deel vastleggen als Income:Reimbursements als zij u terugbetalen). In ons eenvoudige geval betalen we het volledige bedrag.
  • Pensioenbijdrage: Op 2025-09-15 wordt $500 overgemaakt van de betaalrekening naar een 401(k)-beleggingsrekening. Dit is geen uitgave, maar eerder het overboeken van activa van de ene vorm (contant) naar de andere (pensioenfonds). De transactie debiteert Assets:Investment:401k en crediteert Assets:Bank:Checking. We taggen het met #pensioen voor de duidelijkheid. Na deze transactie zal uw betaalrekeningsaldo met 500 dalen en zal uw 401k-rekeningsaldo in het grootboek toenemen met wat die 500 USD vertegenwoordigt (afhankelijk van hoe u beleggingen bijhoudt, kunt u vervolgens fondseenheden kopen met dat geld – dat zou een andere transactie in de beleggingsrekening zijn, bijvoorbeeld het kopen van X aandelen van een fonds tegen prijs Y, met het geld dat uit het 401k-actief gaat). In een basispersoonlijk grootboek kunt u de 401k misschien gewoon als spaarrekening behandelen en het saldo periodiek bijwerken of bijdragen vastleggen zoals dit, en misschien prijsnoteringen gebruiken voor groei. Het belangrijkste is dat deze transactie een overboeking is, geen uitgave – het bouwt uw activa op. Veel budgetteringsinstrumenten zouden pensioenbijdragen als "uitgaven" tellen (omdat ze uw betaalrekening verlaten), maar in boekhoudkundige termen is het gewoon geld naar een andere zak verplaatsen. Dit onderscheid helpt u uw spaarquote versus uitgaven te begrijpen.

Als we een transactie hadden voor het betalen van de creditcardrekening, zou die eruitzien als het overboeken van geld van de betaalrekening naar de creditcardschuld (bijv. Liabilities:CreditCard:Visa 100 USD / Assets:Bank:Checking -100 USD). Dat zou het creditcardsaldo weer verlagen (misschien naar nul als u het volledig betaalt) en uw banksaldo dienovereenkomstig verminderen, zonder effect op uitgavenrekeningen – omdat u de uitgaven al op het moment van aankoop heeft vastgelegd. Het onthouden om creditcards op deze manier te behandelen is cruciaal voor een nauwkeurige persoonlijke financiële administratie. U kunt de betaling ook taggen (sommigen gebruiken #cc-betaling of iets dergelijks) of de afschrijvingsperiode in de narratie opnemen voor de duidelijkheid.

Samenvatting: Een persoonlijk financieel grootboek in Beancount helpt discipline en structuur aan te brengen in uw geldbeheer. Door transacties te categoriseren met rekeningen (en optioneel tags), kunt u inzichtelijke rapporten produceren: maandelijkse uitgaven per categorie, jaartotalen, hoeveel u heeft gespaard, enzovoort. De dubbelboekhoudkundige aanpak betekent dat elke euro verantwoord is: als het saldo van een rekening daalt, is het ergens naartoe gegaan (een andere rekening stijgt). Dit vangt fouten op en voorkomt het veelvoorkomende "vermist geld"-probleem in eenvoudigere trackingtools. Met automatisering kunt u de meeste transacties importeren en vervolgens gewoon controleren en classificeren, waardoor onderhoud goed haalbaar is. Na verloop van tijd bouwt u een financieel dagboek op dat uitgebreid is – het kan zelfs zaken aan zoals het splitsen van rekeningen met vrienden (met behulp van eigenvermogensrekeningen of betaalbare/ontvangbare rekeningen), het bijhouden van leningafschrijving, of beleggingsprestaties, als u ervoor kiest om die gebieden uit te breiden. Zelfs in de meest basale vorm (zoals getoond in het fragment) geeft Beancount u duidelijkheid over dagelijkse uitgaven, terugkerende verplichtingen en de voortgang naar langetermijndoelen (zoals pensioensparen). En omdat het platte tekst is, heeft u volledige controle: u kunt het scripten, opvragen of integreren met andere tools (zoals de webinterface Fava voor een gebruiksvriendelijke weergave). Kortom, deze opstelling verandert uw persoonlijke financiën in gegevens die u kunt analyseren en vertrouwen, terwijl het eenvoudig genoeg blijft om geen karwei te zijn.


Door uw Beancount-grootboek aan te passen aan uw situatie – of u nu freelancet, een klein bedrijf runt of persoonlijke gelden beheert – profiteert u van een systematische, dubbelboekhoudkundige benadering van financieel bijhouden met de flexibiliteit van een platte-tekstsysteem. Deze voorbeeldconfiguraties demonstreren kernpatronen waarop u kunt voortbouwen. Naarmate uw bedrijf groeit of uw financiële leven complexer wordt, kunt u het rekeningschema uitbreiden of geavanceerde functies gebruiken (zoals budgetten, variantieanalyse of meervoudige valutabeheer) indien nodig. De sleutel is om te beginnen met een schone, logische structuur (zoals de getoonde) en transacties consequent vast te leggen. Met dat op zijn plaats zal Beancount een krachtige bondgenoot zijn bij het begrijpen en beheren van uw financiën, in verschillende sectoren en persoonlijke scenario's. Veel boekhoudplezier!

Bron: https://beancount.io/nl/docs/industry-specific-setups