Doorgaan naar hoofdinhoud

Branche-specifieke configuraties

Voorbeeldconfiguraties voor freelancers, kleine bedrijven en persoonlijke financiën

In deze gids onderzoeken we hoe u een Beancount-grootboek kunt aanpassen aan verschillende behoeften : een zelfstandig professional (freelancer), een kleinschalig bedrijf en persoonlijke huishoudfinanciën. Elk scenario heeft een unieke rekeningstructuur en specifieke overwegingen. We leggen de ratio achter elke configuratie uit, geven voorbeeld-snippets voor Beancount en belichten nuttige functies (zoals aangepaste tags en geautomatiseerde imports) die het bijhouden vergemakkelijken. De toon is instructief maar toegankelijk – of u nu een ontwikkelaar, technisch onderlegde professional of een financiële enthousiasteling bent, deze voorbeelden helpen u Beancount toe te passen in de echte wereld.

industry-specific-setups

Freelancers

Freelancers (zoals softwareontwikkelaars of grafisch ontwerpers) hebben vaak te maken met meerdere klanten en projectkosten. Een eenvoudige Beancount-configuratie kan helpen bij het bijhouden van inkomsten per klant, zakelijke uitgaven (inclusief ingehuurde onderaannemers) en geld dat opzij is gezet voor belastingen. Het doel is om het overzichtelijk te houden, zodat het meegroeit met uw freelancebedrijf zonder onnodige complexiteit.

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

  • Assets : Zakelijk : Betaalrekening – Een zakelijke bankrekening voor alle klantbetalingen en zakelijke uitgaven.
  • Assets : Zakelijk : Belastingreserves – Een spaarrekening om een deel van het inkomen opzij te zetten voor belastingbetalingen (aangezien er geen werkgever is die belasting voor u inhoudt).
  • Income : Klant : *Naam*** – Inkomstenrekeningen voor klantbetalingen. U kunt subrekeningen maken per grote klant (bijv. Income:Klant:ACME), of één rekening Income:Freelance gebruiken waarbij de klantnamen in de transacties worden getagd.
  • Expenses : Zakelijk : Onderaannemers – Voor betalingen aan onderaannemers of uitbesteed werk.
  • Expenses : Zakelijk : Software (en andere categorieën zoals Reizen, Benodigdheden) – Voor reguliere zakelijke uitgaven (software-abonnementen, apparatuur, reizen naar klanten, etc.).
  • Equity : Privéopname – (Optioneel) Om overboekingen van winst uit het bedrijf naar uzelf privé vast te leggen. Dit helpt om zakelijke middelen te onderscheiden van privégeld wanneer u uzelf uitbetaalt.

Onderbouwing : Deze structuur zorgt ervoor dat al het zakelijke geld wordt bijgehouden op speciale rekeningen. Inkomsten van elke klant worden geregistreerd (waardoor u eenvoudig ziet wie uw belangrijkste klanten zijn) en uitgaven worden gecategoriseerd voor belastingaftrek. Door belastingen op een aparte activarekening opzij te zetten (of een passiva-rekening voor verschuldigde belastingen te gebruiken), voorkomt u dat u per ongeluk geld uitgeeft dat aan de belastingdienst moet worden betaald. Het grootboek blijft eenvoudig : als u nieuwe klanten of uitgavencategorieën krijgt, kunt u nieuwe rekeningen toevoegen of tags gebruiken zonder alles te hoeven reorganiseren. Een veelvoorkomende valkuil is het mengen van privé- en zakelijke transacties op één rekening ; door een speciale zakelijke betaalrekening (en bijbehorende activarekening) aan te houden, worden afstemming en rapportage overzichtelijker. Een andere valkuil is het vergeten vast te leggen van kasoverboekingen voor belastingen of privéopnames – door rekeningen zoals Belastingreserves en Privéopname te gebruiken, wordt elke euro verantwoord.

Beancount-functies om te benadrukken : Tags en metadata zijn uiterst nuttig voor freelancers. U kunt bijvoorbeeld transacties taggen met een project- of factuurnummer, of een metadataveld gebruiken om de klantnaam te noteren als u liever geen aparte inkomstenrekeningen per klant gebruikt. Dit maakt het eenvoudig om transacties voor een specifieke klant of project te filteren of op te vragen (bijv. het optellen van alle uitgaven met de tag #ProjectX). Daarnaast kunnen de geautomatiseerde importers van Beancount de gegevensinvoer vereenvoudigen – u kunt bijvoorbeeld een importer instellen voor uw bank- of creditcardafschriften om transacties in uw grootboek in te voeren, en vervolgens alleen de juiste uitgaven- of inkomstenrekeningnamen toevoegen. Dit bespaart tijd bij veel kleine transacties (zoals software-abonnementen of reiskosten).

Voorbeeld-snippet grootboek freelancer

Hieronder staat een vereenvoudigde Beancount-snippet voor een freelance ontwikkelaar. Het toont het openen van enkele belangrijke rekeningen, een binnenkomende betaling van een klant, een betaling aan een onderaannemer, een typische zakelijke uitgave en het overboeken van geld naar een belastingreserve-rekening. (In de praktijk zou u ook andere uitgaven zoals reizen of de aankoop van apparatuur op vergelijkbare wijze vastleggen.)

1970-01-01 open Assets:Zakelijk:Betaalrekening
1970-01-01 open Assets:Zakelijk:Belastingreserves
1970-01-01 open Income:Klant:ACME
1970-01-01 open Expenses:Zakelijk:Onderaannemers
1970-01-01 open Expenses:Zakelijk:Software

; Klantinkomsten – betaling van een factuur
2025-08-15 * "Factuurbetaling van ACME Corp"
factuur: "INV-2025-08-15"
Assets:Zakelijk:Betaalrekening 5000 USD
Income:Klant:ACME -5000 USD

; Reguliere uitgave – bijv. software-abonnement voor het bedrijf
2025-08-05 * "GitHub-abonnement"
Expenses:Zakelijk:Software 15 USD
Assets:Zakelijk:Betaalrekening - 15 USD

; Uitgave onderaannemer – betaling aan een onderaannemer voor hulp
2025-08-20 * "Betaling onderaannemer – Jane Doe"
Expenses:Zakelijk:Onderaannemers 2000 USD
Assets:Zakelijk:Betaalrekening -2000 USD

; Belastingreservering – geld overboeken naar belastingreserve
2025-08-31 * "Q3-belastingen opzij zetten"
Assets:Zakelijk:Belastingreserves 1500 USD
Assets:Zakelijk:Betaalrekening -1500 USD #belasting

Laten we doornemen wat er gebeurt :

  • We openen de benodigde rekeningen bovenaan (met een startdatum). Dit is niet strikt vereist voor Beancount (rekeningen worden bij het eerste gebruik aangemaakt als ze niet zijn geopend), maar het is een goede gewoonte om ze te declareren. De rekeningen Assets:Zakelijk:Betaalrekening en Assets:Zakelijk:Belastingreserves zullen saldi in USD bevatten ; inkomsten- en uitgavenrekeningen kunnen zonder valuta in de open-richtlijn worden gelaten, omdat ze de transactievaluta overnemen (in dit geval USD).
  • Factuurbetaling van klant : Op 2025-08-15 registreert een inkomstentransactie een klantbetaling van $ 5.000 voor een factuur. We crediteren Income:Klant:ACME (inkomsten stijgen met een negatief bedrag in dubbel boekhouden) en debiteren de betaalrekening. Er is een metadataveld factuur: "INV-2025-08-15" 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 #klant-ACME voor snelle filtering. Als u meerdere klanten heeft, kunt u een algemene rekening Income:Klanten gebruiken en vertrouwen op dergelijke metadata of het veld 'Begunstigde' om klanten te onderscheiden, in plaats van veel subrekeningen aan te maken.
  • Zakelijke uitgave (software) : Op 2025-08-05 leggen we een uitgave van $ 15 vast voor een GitHub-abonnement (bijvoorbeeld voor private repositories of andere diensten). De boeking gaat naar Expenses:Zakelijk:Software en verlaagt het saldo op de zakelijke betaalrekening. Kleine terugkerende uitgaven zoals deze kunnen worden getagd (we hebben bijvoorbeeld #belasting toegevoegd aan de belastingtransactie hieronder ; op dezelfde manier kunt u bepaalde uitgaven taggen als #terugkerend als ze maandelijks voorkomen, etc.). In dit geval maakt de rekeningnaam zelf (Software) het al duidelijk.
  • Betaling onderaannemer : Op 2025-08-20 betaalde de freelancer een onderaannemer (Jane Doe) $ 2.000. Dit wordt gelogd als een uitgave in Expenses:Zakelijk:Onderaannemers en contant geld uit de betaalrekening. U kunt de naam van de onderaannemer opnemen in de omschrijving (zoals we deden) of als een metadataveld (bijv. onderaannemer: "Jane Doe"). Dit houdt een audittrail bij van wie u heeft betaald en waarom (handig voor details tijdens de belastingaangifte of het budgetteren).
  • Overboeking belastingreserve : Op 2025-08-31 boekt de freelancer $ 1.500 over van de hoofdbetaalrekening naar een speciale belastingreserve-rekening. We hebben deze transactie getagd met #belasting voor de zichtbaarheid. Dit is geen uitgave (u verplaatst alleen uw eigen geld), dus het gaat tussen twee activarekeningen. Door dit elke maand of elk kwartaal te doen, bouwt u reserves op om de geschatte belastingen te dekken. Wanneer het tijd is om de belastingen daadwerkelijk aan de overheid te betalen, registreert u een uitgave (bijvoorbeeld Expenses:Belastingen) en een aftrek van de Belastingreserves (of Betaalrekening). Een veelvoorkomende valkuil is om deze overboeking als een uitgave in uw rapporten te behandelen – onthoud dat het geen uitgave is, maar een voorzorgsreservering. Alleen de daadwerkelijke belastingbetaling aan de fiscus is een uitgave (of vermindering van een opgebouwde belastingverplichting als u dat zo bijhoudt).

Samenvatting : Het Beancount-grootboek van een freelancer legt de nadruk op eenvoud en duidelijkheid. Alle inkomsten en uitstromen die verband houden met het bedrijf worden methodisch vastgelegd. Door betekenisvolle rekeningnamen en incidentele tags/metadata te gebruiken, kunt u eenvoudig rapporten genereren per klant of per uitgavencategorie (bijv. totale inkomsten per klant, totaal uitgegeven aan onderaannemers dit jaar, etc.). Deze opzet is schaalbaar – u kunt nieuwe klanten of uitgavencategorieën toevoegen naarmate uw bedrijf zich ontwikkelt. Met functies zoals geautomatiseerde imports (om banktransacties binnen te halen) en aangepaste tagging voor projecten of facturen, kan Beancount de administratieve last voor freelancers aanzienlijk verminderen en tegelijkertijd op elk moment een helder beeld van de financiën bieden.

Kleine bedrijven

Kijk vervolgens naar een kleine boutique e-commerce onderneming – bijvoorbeeld een online winkel die handgemaakte goederen verkoopt. Dit scenario voegt complexiteit toe zoals voorraadbeheer, kostprijs van de omzet (COGS) en het afhandelen van online betalingsverwerkers. Beancount kan hierin voorzien met een doordachte rekeningstructuur en een methode voor het vastleggen van transacties. We gebruiken een casus waarin het bedrijf producten in de voorraad bijhoudt, verkopen registreert via een online platform (zoals Shopify met Stripe voor betalingen) en typische bedrijfskosten logt.

Belangrijkste rekeningen voor een boutique e-commerce onderneming : Naast de basis bank- en kostenrekeningen, bevat een grootboek voor een detailhandel rekeningen om voorraad- en verkoopstromen bij te houden :

  • Activa : Bank : Betaalrekening – De betaalrekening van het bedrijf (voor het betalen van leveranciers, operationele kosten en het ontvangen van overboekingen van betalingsverwerkers).
  • Activa : Stripe : Saldo (of Activa : PayPal, enz.) – Een tussenrekening voor gelden die zijn verzameld via online betalingen maar nog niet op de bankrekening staan. Bijvoorbeeld, wanneer een klant via Stripe betaalt, kan het geld op een Stripe-rekening blijven staan voordat het in batches op je bankrekening wordt gestort.
  • Activa : Voorraad : *Product*** – Voorraadrekeningen voor je producten. Je kunt elk product (of productcategorie) behandelen als een commodity in Beancount om de aanwezige hoeveelheden bij te houden. Bijvoorbeeld, Activa : Voorraad : Widgets kan de hoeveelheid "Widget"-artikelen bevatten die momenteel op voorraad zijn, gewaardeerd tegen hun kostprijs.
  • Inkomsten : Verkoop – Legt de opbrengsten uit productverkopen vast. Je kunt subrekeningen gebruiken voor verschillende verkoopkanalen (bijv. Inkomsten : Verkoop : Online vs Inkomsten : Verkoop : InWinkel) als het bedrijf meerdere kanalen heeft, maar we houden het simpel met één verkooprekening.
  • Kosten : COGS – Kostprijs van de omzet (Cost of Goods Sold), om de kostenbasis van voorraadartikelen vast te leggen wanneer ze worden verkocht. Deze rekening laat effectief zien hoeveel de verkochte voorraad jou (als bedrijfseigenaar) over een periode heeft gekost. Het is een cruciaal onderdeel voor het berekenen van de brutowinst.
  • Kosten : Vergoedingen – Voor verwerkingskosten van betalingen en platformkosten (Stripe-kosten, Shopify-kosten, PayPal-kosten, enz. kunnen hier allemaal worden vastgelegd). Je kunt dit indien gewenst opsplitsen in meer gedetailleerde rekeningen (bijv. Kosten : Vergoedingen : Stripe en Kosten : Vergoedingen : Shopify), maar één rekening kan volstaan voor alle transactiekosten.
  • Kosten : Operationeel – Algemene bedrijfskosten die niet direct gekoppeld zijn aan de COGS, zoals marketing, webhosting, software, verzendbenodigdheden, enz. Deze kunnen worden opgesplitst in subrekeningen (bijv. Kosten : Marketing, Kosten : Webhosting, Kosten : Verzending) om verschillende kostencentra te analyseren.
  • Passiva : Omzetbelasting – (Optioneel, indien van toepassing) Als het bedrijf omzetbelasting of BTW moet innen op verkopen, houdt deze schuldrekening de geïnde maar nog niet aan de overheid afgedragen belastingen bij. Elke verkoop splitst dan het belastinggedeelte uit naar deze rekening. Dit zorgt ervoor dat geïnde belastingen niet als inkomen worden geteld en gereserveerd blijven voor betaling aan de belastingdienst.
  • EigenVermogen : Eigenaar – (Optioneel) Vertegenwoordigt de investering van de eigenaar en de ingehouden winst. Bij de start van het bedrijf wordt elke initiële financiering door de eigenaar hier gecrediteerd (met een debet op de bank of voorraad als ze contant geld of voorraad hebben ingebracht). Ook als de eigenaar winst opneemt (onttrekkingen), kan dat op deze eigenvermogensrekening worden geregistreerd. Dit houdt de balans in evenwicht, maar voor de dagelijkse gang van zaken speelt dit niet vaak een rol.

Motivering : Deze opzet scheidt de stroom van goederen en geld. Voorraadaankopen worden in eerste instantie op de balans geregistreerd (als activa) in plaats van direct als kosten. Pas wanneer je producten verkoopt, boek je de kosten (COGS), waarbij de opbrengsten worden gekoppeld aan de gerelateerde kosten voor een correcte winstberekening. Inkomsten uit verkopen worden geregistreerd tegen de brutoverkoopprijs, terwijl vergoedingen afzonderlijk worden vastgelegd, zodat je zowel de brutoomzet als de betaalde vergoedingen (en dus de netto-omzet) kunt zien. Het gebruik van een tussenrekening zoals Activa : Stripe : Saldo helpt bij het afstemmen van stortingen – geld verplaatst zich van Stripe naar je bank in bedragen, en je kunt die overboekingen zonder verwarring registreren. Een veelvoorkomende valkuil voor nieuwe winkeliers is het verwaarlozen van een correcte voorraadregistratie – bijvoorbeeld door alle voorraadaankopen onmiddellijk als kosten te boeken. Dat kan prima zijn voor het bijhouden van de cashflow, maar het vertekent je winst : je lijkt minder winstgevend in maanden waarin je de voorraad aanvult, en winstgevender in maanden waarin je verkoopt, ook al is de voorraad eerder gekocht. Door een voorraadactiva-rekening en COGS te gebruiken, stem je de kosten af op de verkoop. Een andere valkuil is het niet verantwoorden van vergoedingen of terugbetalingen, waardoor je bank- of Stripe-saldi niet overeenkomen met je geregistreerde inkomsten. We vermijden dat door vergoedingen expliciet te registreren en de Stripe-activarekening te gebruiken om bij te houden wat Stripe verschuldigd is of heeft uitbetaald.

Beancount-functies om uit te lichten : Voorraadbeheer in Beancount maakt gebruik van de mogelijkheid om met commodities en kosten om te gaan. Elk product kan een commodity-symbool zijn (bijv. WIDGET), waardoor je zowel de hoeveelheid als de eenheidsprijs kunt vastleggen. Wanneer je artikelen verkoopt, kan de voorraadlogica van Beancount (standaard FIFO) automatisch de juiste kosten uit je voorraadpartijen kiezen. We zullen dit in het voorbeeld zien. Je kunt ook metadata of links gebruiken om verkopen en hun bijbehorende COGS-boekingen aan elkaar te koppelen (bijvoorbeeld door hetzelfde ordernummer in beide transacties te gebruiken, of een gedeelde tag zoals #order1001 bij de verkoop en de voorraadvermindering, waardoor het eenvoudig is om op te vragen of dubbel te controleren of elke verkoop een bijbehorende COGS-boeking heeft). Daarnaast kunnen geautomatiseerde importfuncties hierbij helpen : je kunt een script gebruiken om verkoopgegevens uit Shopify of Stripe-uitbetalingsrapporten te importeren, of je bankafschriften importeren om kostentransacties en uitbetalingen op te vangen. Het automatiseren van deze repetitieve datataken betekent dat je meer tijd besteedt aan het analyseren en minder aan het typen van getallen.

Voorbeeld van een grootboekfragment voor het kleinbedrijf

Hieronder volgt een beknopt Beancount-voorbeeld voor ons e-commercebedrijf. We illustreren de inkoop van voorraad, het registreren van een verkoop (waarbij de kosten van de betalingsverwerker zijn verrekend) en het vastleggen van de kostprijs van de omzet voor die verkoop. In de praktijk zou u ook andere kosten (zoals platformkosten, advertentiekosten, enz.) op een vergelijkbare manier registreren als in het getoonde kostenvoorbeeld. We gaan uit van USD als valuta en een product genaamd "Widget" dat we als commodity bijhouden in de voorraad.

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

; Inkoop voorraad (50 eenheden Widget tegen een kostprijs van $ 10 per stuk)
2025-03-10 * "50 Widgets gekocht van SupplierCo"
Assets:Inventory:Widgets 50 WIDGET {10 USD}
Assets:Bank:Checking -500 USD

; Verkoop aan klant (Order #1001 via online winkel, 2 Widgets verkocht)
2025-04-05 * "Verkooporder #1001 (2x Widget via Shopify)"
Assets:Stripe:Balance 58 USD ; netto betaling ontvangen na kosten
Expenses:Fees 2 USD ; verwerkingskosten (Stripe)
Income:Sales -60 USD ; omzet voor 2 Widgets (@ $ 30 per stuk)

; Kostprijs van de omzet voor de bovenstaande verkoop (2 Widgets tegen $ 10 inkoop)
2025-04-05 * "COGS voor Order #1001 (2x Widget)"
Expenses:COGS 20 USD
Assets:Inventory:Widgets -2 WIDGET {10 USD}

Dit is wat er stap voor stap gebeurt:

  • Rekeningen openen: We openen de betaalrekening, de Stripe-saldorekening, een voorraadrekening voor Widgets (gedeclareerd met de commodity WIDGET om eenheden bij te houden), en de belangrijkste inkomsten- en kostenrekeningen (Verkoop, COGS, Kosten). Door Assets:Inventory:Widgets WIDGET te declareren, geven we aan dat deze rekening hoeveelheden van de commodity "WIDGET" zal bevatten. Dit zorgt ervoor dat Beancount weet dat er eenheden van een commodity kunnen worden verwacht, en we kunnen een kostprijs aan die eenheden koppelen.

  • Inkoop van voorraad: Op 2025-03-10 kopen we voorraad – 50 eenheden Widget van een leverancier voor 10perstuk,watintotaal10 per stuk, wat in totaal 500 kost. De transactie debiteert Assets:Inventory:Widgets met 50 WIDGET {10 USD}. Dit betekent dat 50 eenheden van de commodity WIDGET, elk met een geregistreerde kostprijs van 10 USD, worden toegevoegd aan de voorraadrekening. De creditboeking is Assets:Bank:Checking -500 USD (kasuitgave). Merk op dat we hier niet direct een kostenrekening hebben gebruikt; we activeren de aankoop als een voorraadactiva. Nu bevat onze balans 50 Widgets met een totale waarde van 500indevoorraad.(Alsueenbalansrapportzouuitdraaien,zoudevoorraadrekening50WIDGETeenhedentonenmeteenwaardevan500 in de voorraad. (Als u een balansrapport zou uitdraaien, zou de voorraadrekening 50 WIDGET-eenheden tonen met een waarde van 500.)

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

    • Assets:Stripe:Balance 58 USD: ontvangen geld van de verkoop, maar momenteel nog in Stripe (netto na aftrek van kosten). Stel dat de klant in totaal 60heeftbetaald;Stripehield60 heeft betaald; Stripe hield 2 aan kosten in, en er staat nu 58oponzeStriperekening(dielaternaaronzebankwordtovergemaakt).Weregistrerende58 op onze Stripe-rekening (die later naar onze bank wordt overgemaakt). We registreren de 58 als een bezitting (asset) in Stripe.
    • Expenses:Fees 2 USD: de kosten van $ 2 worden geregistreerd als bedrijfskosten. Dit zorgt ervoor dat onze resultatenrekening die kosten reflecteert, en dat onze Stripe-activa plus de kosten samen gelijk zijn aan de totale betaling van de klant.
    • Income:Sales -60 USD: we registreren $ 60 aan inkomsten uit verkoop. (Inkomstenrekeningen stijgen met credits, vandaar het negatieve bedrag in de notatie van Beancount).

    Na deze transactie is het netto-effect: Income:Sales is met 60 gestegen, er is een extra bezitting van 58(teontvangenvanStripe),en58 (te ontvangen van Stripe), en 2 aan kosten voor de verwerking. Als Stripe later de 58naaronzebankstort,registrerenweeeneenvoudigeoverboekingzoalsAssets:Bank:Checking58USD/Assets:Stripe:Balance58USDopdedatumvanuitbetalingditverplaatstdebezittingvandeStriperekeningnaardebank,zonderimpactopinkomstenofkosten(slechtseenverschuivingvanactiva).Wehebbendieoverboekinghierbovennietgetoond,maarhetiseenbelangrijkestapineenree¨leboekhoudingomuwStriperekeningop58 naar onze bank stort, registreren we een eenvoudige overboeking zoals `Assets:Bank:Checking 58 USD / Assets:Stripe:Balance -58 USD` op de datum van uitbetaling – dit verplaatst de bezitting van de Stripe-rekening naar de bank, zonder impact op inkomsten of kosten (slechts een verschuiving van activa). We hebben die overboeking hierboven niet getoond, maar het is een belangrijke stap in een reële boekhouding om uw Stripe-rekening op 0 te krijgen zodra alles is overgemaakt.

  • COGS registreren voor de verkoop: Ook op 2025-04-05 hebben we een aparte transactie om de kosten van de 2 verkochte Widgets te registreren. We debiteren Expenses:COGS 20 USD en crediteren Assets:Inventory:Widgets -2 WIDGET {10 USD}. Hiermee worden 2 eenheden uit de voorraad verwijderd (elk had een kostprijs van 10,zoalseerdergeregistreerd,dus10, zoals eerder geregistreerd, dus 20 in totaal). We specificeren {10 USD} om Beancount te vertellen uit welke kostenpartij moet worden geput – in dit geval komt dit overeen met de partij die we op 2025-03-10 hebben toegevoegd. Nu blijven er 48 Widgets in de voorraadrekening over, met een bijbehorende waarde van 480.De480. De 20 wordt verplaatst naar de COGS-kosten, die op de resultatenrekening verschijnen en de brutowinst verminderen met de kostprijs van die goederen. (Als we dit niet zouden registreren, zouden onze inkomsten te hoog worden weergegeven in verhouding tot de kosten.) We gebruiken een aparte transactie voor de duidelijkheid, maar het is ook mogelijk om de verkoop en COGS te combineren in één transactie met meerdere regels. Sommigen geven de voorkeur aan het splitsen, zoals hier getoond, vanwege de leesbaarheid en reconciliatie (u kunt elke COGS-boeking duidelijk koppelen aan een order). We hebben ook het ordernummer herhaald in de omschrijving 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 er voorraad in het spel is – als er één ontbreekt, kloppen uw voorraadtellingen niet meer. Een valkuil die vermeden moet worden, is het vergeten om voorraad af te boeken bij een verkoop, waardoor er een fictieve voorraad op uw balans blijft staan en uw kosten te laag worden ingeschat. Het gebruik van de voorraadfuncties van Beancount (de {} kostennotatie) helpt u te signaleren wanneer u probeert meer eenheden te verwijderen dan u op voorraad heeft (de software zal in dat geval een foutmelding geven).

Samenvatting: Een kleinbedrijf dat Beancount gebruikt, kan een verrassend robuust boekhoudsysteem onderhouden. Door rekeningen zo te structureren dat ze bijhouden waar het geld is, waar het vandaan komt en hoe de kosten stromen, krijgt u een nauwkeurig beeld van de winstgevendheid. Ons voorbeeld liet zien hoe u met voorraad en verkopen omgaat; op een vergelijkbare manier zou u andere transacties registreren, zoals het betalen van een internetrekening (Expenses:Operating:Internet tegenover Assets:Bank:Checking), het ontvangen van een lening of investering (Assets:Bank tegenover Liabilities:Loan of Equity:OwnerEquity), of het betalen van omzetbelasting (Liabilities:SalesTax tegenover Assets:Bank bij afdracht). De sleutel is consistentie: registreer elk type transactie volgens hetzelfde patroon, en Beancount houdt de boeken in evenwicht. Met functies zoals geautomatiseerde gegevensimport (bijvoorbeeld het inladen van maandelijkse Stripe-kosten of banktransacties) en aangepaste tags/links (om gerelateerde transacties zoals verkopen en terugbetalingen te correleren), kan het systeem zowel flexibel als efficiënt zijn. Het resultaat is een georganiseerd grootboek dat kan meegroeien met het bedrijf – u kunt nieuwe voorraadrekeningen, nieuwe kostencategorieën of extra inkomstenstromen (zoals een nieuwe online marktplaats) toevoegen zonder het hele systeem te hoeven herzien.

Persoonlijke Financiën

Laten we tot slot kijken naar het gebruik van Beancount voor persoonlijke of huishoudelijke financiën. Deze opzet is bedoeld voor een individu of gezin dat dagelijkse uitgaven, bankrekeningen, creditcards, leningen en beleggingen beheert. De nadruk ligt hier op het bijhouden van waar uw geld naartoe gaat (uitgaven), waar het vandaan komt (inkomsten) en hoe het wordt gespaard of belegd (activa en passiva). Beancount kan budgetteringsapps vervangen of aanvullen door een transparant en aanpasbaar overzicht van uw financiën te bieden, waarbij de strengheid van dubbel boekhouden garandeert dat niets dubbel wordt geteld of vergeten.

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

  • Activa : Bank : Betaalrekening – Uw belangrijkste betaalrekening voor de ontvangst van inkomsten en het betalen van rekeningen.
  • Activa : Bank : Spaarrekening – Spaarrekening voor een noodfonds of specifieke doelen. (U kunt meerdere spaar- of beleggingsrekeningen hebben – elke rekening kan een activarekening zijn).
  • Activa : Contant – Als u contant geld gebruikt voor uitgaven, kunt u een kasrekening bijhouden om opnames en contante uitgaven te registreren.
  • Activa : Beleggingen : *Broker*** – Beleggingsrekeningen, zoals een effectenrekening, pensioenrekening, enz. Deze kunnen verder worden onderverdeeld per type belegging of gewoon worden gegroepeerd als één rekening per instelling. Bijvoorbeeld: Activa:Beleggingen:Vanguard of Activa:Beleggingen:DeGiro. Het bijhouden van beleggingen kan ook betrekking hebben op grondstoffen voor aandelen of fondsen, maar als dit te gedetailleerd is, kunt u ook gewoon de inleg en de rekeningsaldi bijhouden.
  • Passiva : Creditcard : *Naam*** – Eén rekening per creditcard (bijv. Passiva:Creditcard:Visa of op banknaam). Alle aankopen met de kaart worden hier geregistreerd (met een bijbehorende uitgave), en betalingen aan de kaart zijn overboekingen die deze schuld verminderen.
  • Passiva : Lening : *Naam*** – Alle leningen (studiefinanciering, hypotheek, autolening) kunnen worden gevolgd met een passivarekening. U registreert de hoofdsom en elke betaling, waarbij u de splitsing maakt tussen rente (uitgave) en aflossing (vermindering van de schuld). Dit is een geavanceerd aspect, maar belangrijk voor een volledig financieel beeld.
  • Inkomsten : Salaris (en/of Inkomsten : Bonus, Inkomsten : Rente, enz.) – Voor het registreren van loonstroken, bonussen, rente-inkomsten, dividenden, enz. Met inkomstenrekeningen kunt u uw totale verdiensten uit verschillende bronnen zien. (Als op uw loonstrook al belastingen zijn ingehouden, kunt u de netto storting op uw betaalrekening als inkomen registreren, of het bruto salaris en de belastinginhoudingen als uitgave of schuld vastleggen – er bestaan verschillende benaderingen, maar velen registreren voor de eenvoud in persoonlijke boeken alleen het nettoloon als inkomen.)
  • Uitgaven: Meestal talrijk, onderverdeeld in categorieën die voor u relevant zijn. Bijvoorbeeld: Uitgaven : Wonen : Huur, Uitgaven : Voeding : Boodschappen, Uitgaven : Voeding : UitEten, Uitgaven : Nutsvoorzieningen : Elektriciteit, Uitgaven : Entertainment, Uitgaven : Reizen, Uitgaven : Belastingen, Uitgaven : Diversen – welke categorieën uw uitgavenpatroon ook weerspiegelen. U kunt zo gedetailleerd of algemeen zijn als u wilt. De hiërarchie van rekeningen helpt bij het aggregeren (bijv. Uitgaven:Voeding telt zowel de boodschappen als het uit eten gaan op). Het is gebruikelijk om een hiërarchie te hebben voor belangrijke groepen (Huisvesting, Voeding, Vervoer, Gezondheidszorg, enz.).
  • Eigen-Vermogen : Openingsbalansen – Wordt gebruikt om rekeningsaldi te initialiseren wanneer u met uw grootboek begint (zodat alle activa minus passiva gelijk zijn aan uw beginvermogen geregistreerd in het eigen vermogen). Na de start kunt u ook Eigen-Vermogen : Ingehouden-Winsten of iets dergelijks gebruiken om de geaccumuleerde nettowinst weer te geven (hoewel u in persoonlijke financiën meestal gewoon de inkomsten minus de uitgaven in uw nettowaarde laat vloeien). Rekeningen van het eigen vermogen zijn in het dagelijks gebruik minder zichtbaar, maar zorgen ervoor dat de boekhoudvergelijking in evenwicht blijft.

Rationale: De opzet voor persoonlijke financiën draait om het vastleggen van uw financiële leven in één samenhangend systeem. Elke bovenstaande rekening dient om verschillende soorten financiën te scheiden, zodat u vragen kunt beantwoorden als: "Hoeveel heb ik deze maand aan eten uitgegeven?" (door de som te nemen van Uitgaven : Voeding : *), "Hoeveel schuld heb ik nog over?" (door naar de Passiva-rekeningen te kijken), of "Wat is mijn nettowaarde?" (Activa minus Passiva). Een groot voordeel van dubbel boekhouden is hier de nauwkeurigheid: wanneer u bijvoorbeeld een supermarktrekening van € 100 met uw creditcard betaalt, registreert u dit als een uitgave en een toename van uw schuld. Wanneer u later de creditcard afbetaalt, registreert u een overboeking van uw bank naar de creditcard – dit lost de schuld af, maar telt de boodschappenuitgave niet dubbel (die was immers al geregistreerd). Een veelvoorkomende valkuil zonder dubbel boekhouden is om de creditcardbetaling zelf als een uitgave te beschouwen, waardoor u die € 100 feitelijk twee keer telt. Beancount voorkomt dat door het ontwerp. Een andere valkuil is het niet aansluiten van rekeningen: met Beancount kunt u balanscontroles (balance assertions) of de balance-instructie gebruiken om er bijvoorbeeld voor te zorgen dat het saldo van uw betaalrekening in het grootboek overeenkomt met het daadwerkelijke bankafschrift. Dit spoort ontbrekende of dubbele boekingen op.

Beancount-functies om te benadrukken: Voor persoonlijke financiën zijn geautomatiseerde imports bijzonder handig vanwege het volume aan transacties. U kunt het importer-framework van Beancount of community-scripts gebruiken om banktransacties, creditcardafschriften en zelfs beleggingstransacties te importeren vanuit CSV-, OFX- of API-bronnen. Dit betekent dat u minder tijd besteedt aan het handmatig overtikken van elke koffie-aankoop. Aangepaste tags zijn nuttig om gegevens te filteren op manieren die rekeningen mogelijk niet bieden. Tag bijvoorbeeld alle vakantiegerelateerde uitgaven met #vakantie2025, ongeacht of het gaat om vluchten, hotels of diners – u kunt dan eenvoudig de totale kosten van die vakantie opvragen. Of tag bepaalde uitgaven als #aftrekbaar als u fiscaal aftrekbare posten wilt bijhouden voor latere referentie. U kunt ook terugkerende facturen taggen (bijv. #maandelijks) om jaarlijks al uw abonnementen en vaste lasten te evalueren. Metadata kan worden gebruikt om notities of bonnen toe te voegen (bijvoorbeeld receipt: "pad/naar/bestand.jpg" om te noteren dat u een afbeelding van de bon hebt opgeslagen, of category: "Werkuitgave" voor het bijhouden van declareerbare items). De flexibiliteit van tags en metadata betekent dat u het systeem kunt aanpassen aan uw persoonlijke behoeften zonder tientallen extra rekeningen aan te hoeven maken.

Voorbeeldfragment van een persoonlijk financieel grootboek

Hieronder vindt u een voorbeeldfragment van een persoonlijk Beancount-grootboek met daarin een aantal typische transacties: een dagelijkse uitgave betaald met een creditcard, een terugkerende factuur betaald vanaf een betaalrekening en een bijdrage aan een pensioenbeleggingsrekening. (Kortheidshalve gaan we ervan uit dat de initiële configuratie is voltooid om rekeningen te openen en salarisinkomsten te registreren; hier concentreren 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

; Voorbeeld dagelijkse uitgaven (koffie met een creditcard)
2025-09-10 * "Starbucks Coffee"
Expenses:Food:Coffee 5.50 USD
Liabilities:CreditCard:Visa -5.50 USD #daily

; Terugkerende maandelijkse factuur (huur betaald van betaalrekening)
2025-09-01 * "Huur appartement september"
Expenses:Housing:Rent 1200 USD
Assets:Bank:Checking -1200 USD #recurring

; Pensioenstorting (overboeking van betaalrekening naar 401k-beleggingsrekening)
2025-09-15 * "401(k) Bijdrage"
Assets:Investment:401k 500 USD
Assets:Bank:Checking -500 USD #retirement

Laten we deze transacties interpreteren:

  • Rekeningen openen: We openen de betaalrekening, een Visa-creditcardrekening, een uitgavenrekening voor koffie (als voorbeeld van een subcategorie van voedingsuitgaven), een uitgavenrekening voor huur en een 401k-beleggingsrekening. In een echt grootboek opent u alle rekeningen die u van plan bent te gebruiken (sparen, andere uitgavencategorieën, inkomsten, enz.). We houden het bij wat nodig is voor dit fragment.
  • Dagelijkse uitgave – koffie: Op 2025-09-10 wordt een koffie-aankoop van $ 5,50 geregistreerd. De uitgave wordt gecategoriseerd onder Expenses:Food:Coffee, en aangezien deze is betaald met een Visa-creditcard, crediteren (verhogen) we Liabilities:CreditCard:Visa. De tag #daily is toegevoegd om aan te geven dat dit een dagelijkse uitgave was – misschien wilt u later filteren op alle dagelijkse discretionaire uitgaven. Merk op dat de creditcardrekening hierna een saldo van $ 5,50 zal vertonen (wat betekent dat u $ 5,50 schuldig bent aan Visa). Als u deze koffie contant had betaald, zou de transactie in plaats daarvan Assets:Cash crediteren (waardoor het contante geld dat u in bezit heeft, afneemt). Als het een aankoop met een pinpas was, zou Assets:Bank:Checking worden gecrediteerd. Het mechanisme is vergelijkbaar, alleen de rekeningen verschillen.
  • Terugkerende factuur – huur: Op 2025-09-01 registreren we de betaling van de maandelijkse huur van $ 1200. Dit komt van de betaalrekening (het crediteren van Assets:Bank:Checking) en wordt gecategoriseerd als Expenses:Housing:Rent. We hebben het getagd met #recurring om aan te geven dat dit een herhalende factuur is. In een volledig grootboek zou u elke maand een soortgelijke boeking kunnen hebben. (Beancount heeft geen ingebouwde automatische terugkerende transactiefunctie, maar u kunt dit bereiken met scripts of door simpelweg elke maand te kopiëren en plakken. Tags helpen om later te controleren of u geen maand heeft gemist of om snel de jaarhuur op te tellen.) Sommige gebruikers gebruiken de functie voor periodieke transacties via het Beancount-importerframework om deze automatisch te genereren, maar dat is een geavanceerde toepassing die hier buiten beschouwing blijft. De kern is dat deze transactie duidelijk laat zien waar uw geld naartoe is gegaan – een uitgave voor huisvesting – en uw verlaagde banksaldo. Een valkuil om op te letten: als u uitgaven deelt of huisgenoten heeft, betaalt u misschien maar een deel van de huur; in dat geval kunt u de transactie splitsen in uw deel en het deel dat iemand anders betaalt (waarbij u het andere deel eventueel registreert als Income:Reimbursements als zij u terugbetalen). In ons eenvoudige geval betalen we het volledige bedrag.
  • Pensioenstorting: Op 2025-09-15 wordt $ 500 verplaatst van de betaalrekening naar een 401(k)-beleggingsrekening. Dit is geen uitgave, maar het overzetten van activa van de ene vorm (contant geld) naar de andere (pensioenfonds). De transactie debiteert Assets:Investment:401k en crediteert Assets:Bank:Checking. We taggen het met #retirement voor de duidelijkheid. Hierna zal het saldo op uw betaalrekening met 500 dalen en zal het saldo van uw 401k-rekening in het grootboek stijgen met de waarde die 500 USD vertegenwoordigt (afhankelijk van hoe u beleggingen bijhoudt, kunt u vervolgens beleggingsfondsen kopen met dat geld – dat zou een andere transactie zijn op de beleggingsrekening, bijv. het kopen van X aandelen van een fonds tegen prijs Y, waarbij het geld uit de 401k-activa gaat). In een eenvoudig persoonlijk grootboek kunt u de 401k gewoon als een spaarrekening behandelen en het saldo periodiek bijwerken of bijdragen zoals deze registreren en eventueel koersen gebruiken voor de groei. Het belangrijkste is dat deze transactie een overboeking is, geen uitgave – het is het opbouwen van uw activa. Veel budgetteringstools zouden pensioenstortingen als "uitgaven" tellen (omdat het geld uw betaalrekening verlaat), maar in boekhoudkundige termen is het slechts het verplaatsen van geld naar een andere zak. Dit onderscheid helpt u om uw spaarpercentage versus uw uitgaven te begrijpen.

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

Samenvatting: Een persoonlijk financieel grootboek in Beancount helpt om discipline en structuur aan te brengen in het bijhouden van uw geld. Door transacties te categoriseren met rekeningen (en optioneel tags), kunt u inzichtelijke rapporten genereren: maandelijkse uitgaven per categorie, jaartotalen, hoeveel u heeft gespaard, enzovoort. De methode van dubbel boekhouden betekent dat elke dollar wordt verantwoord: als het saldo van een rekening daalt, is het ergens naartoe gegaan (een andere rekening stijgt). Dit spoort fouten op en voorkomt het bekende probleem van "verdwenen geld" in eenvoudigere tools. Met automatisering kunt u de meeste transacties importeren en ze vervolgens alleen nog beoordelen en classificeren, waardoor het onderhoud goed te doen is. Na verloop van tijd bouwt u een financieel dagboek op dat uitgebreid is – het kan zelfs zaken aan als het delen van rekeningen met vrienden (met behulp van eigenvermogensrekeningen of crediteuren/debiteurenrekeningen), het bijhouden van de afschrijving van leningen of beleggingsprestaties, mocht u besluiten die gebieden uit te breiden. Zelfs in de basis (zoals getoond in het fragment) geeft Beancount u duidelijkheid over dagelijkse uitgaven, terugkerende verplichtingen en voortgang richting langetermijndoelen (zoals pensioensparen). En omdat het plain-text is, heeft u volledige controle: u kunt het scripten, doorzoeken of integreren met andere tools (zoals de webinterface Fava voor een gebruiksvriendelijk overzicht). Kortom, deze opzet verandert uw persoonlijke financiën in data die u kunt analyseren en vertrouwen, terwijl het eenvoudig genoeg blijft om geen last te worden.


Door uw Beancount-grootboek af te stemmen op uw situatie – of u nu freelancet, een klein bedrijf runt of persoonlijke middelen beheert – profiteert u van een systematische aanpak van dubbel boekhouden voor financiële tracking met de flexibiliteit van een plain-text systeem. Deze voorbeeldconfiguraties tonen kernpatronen waar u op voort kunt bouwen. Naarmate uw bedrijf groeit of uw financiële leven complexer wordt, kunt u het rekeningschema uitbreiden of geavanceerde functies gebruiken (zoals budgetten, variantie-analyse of afhandeling van meerdere valuta's) indien nodig. De sleutel is om te beginnen met een schone, logische structuur (zoals de getoonde voorbeelden) en consequent transacties te registreren. Met die basis is Beancount een krachtige bondgenoot bij het begrijpen en beheren van uw financiën, ongeacht de sector of persoonlijke scenario's. Veel succes met boekhouden!