Ga naar hoofdinhoud

2 berichten getagd met "personal finance"

Bekijk alle tags

Belastingen registreren in Beancount (De pragmatische manier)

· 8 minuten leestijd
Mike Thrift
Mike Thrift
Marketing Manager

Belastingen kunnen aanvoelen als een speciaal, ingewikkeld beest in de wereld van persoonlijke financiën. Maar wat als dat niet zo was? Wat als je ze net als elke andere geldstroom in je grootboek kunt behandelen? Goed nieuws: dat kan. Door belastingen te zien als eenvoudige waardeverplaatsingen blijft je Beancount‑grootboek schoon, gemakkelijk te bevragen en – vooral – begrijpelijk.

Hieronder vind je een praktisch, no‑nonsense patroon dat je in een persoonlijk of klein‑zakelijk Beancount‑bestand kunt opnemen. Het is een simpel systeem voor het verwerken van salarissen, belastingbetalingen en zelfs die vervelende terugbetalingen die over het nieuwe jaar heen gaan. We behandelen de essentiële rekeningen die je nodig hebt, lopen door real‑world voorbeelden, en laten je de exacte queries zien die je moet draaien om de antwoorden te krijgen die je zoekt.

2025-08-25-recording-taxes-in-beancount


De kernprincipes

Voordat we in de code duiken, laten we een paar eenvoudige regels afspreken. Deze principes houden alles logisch en voorkomen toekomstige hoofdpijn.

  • Scheid “wat het is” van “wanneer het geld beweegt.” 🗓️
    Dit is het belangrijkste concept. Een belastingkost behoort tot het jaar waarin je de inkomsten hebt verdiend (bijv. 2024), zelfs als je de rekening bij de Belastingdienst in april 2025 betaalt. Als je de timing van de kost niet scheidt van de timing van de cash‑betaling, worden je jaar‑over‑jaar rapporten rommelig en misleidend.

  • Houd je rekeningshiërarchie saai en simpel. 📁
    Geef je rekeningen duidelijke namen op basis van het type belasting (bijv. IncomeTax, SocialSecurity). Dit maakt je queries ongelooflijk eenvoudig. Rommel geen rekeningnamen met leveranciersnamen of formuliernummers zoals “W‑2” of “1099”; gebruik metadata en tags voor die details.

  • Omarm accrual voor einde‑jaar aanpassingen. ⚖️
    Zelfs voor een persoonlijk grootboek is een eenvoudige accrual‑boeking aan het einde van het jaar de schoonste manier om je rapporten accuraat te maken. Het betekent dat je een kost of terugbetaling in het juiste jaar erkent, zelfs als het geld pas later beweegt. Het is één kleine extra stap die je later mentale gymnastiek bespaart.

  • Schrijf voor je toekomstige zelf. 🧠
    Je doel is duidelijkheid. Voeg alleen extra details toe, zoals het belastingjaar, aan een rekeningnaam als dat echt je queries makkelijker maakt. Vermijd het creëren van een nieuwe set rekeningen elk jaar (Expenses:Taxes:2024:Federal, Expenses:Taxes:2025:Federal, enz.) tenzij je een dwingende reden hebt. Een platte structuur is vaak makkelijker te beheren.


Een minimale rekeningsstructuur

Hier is een basisset rekeningen om je op weg te helpen. Deze structuur is gericht op de VS, maar je kunt de namen eenvoudig aanpassen aan het belastingstelsel van je eigen land. Voeg deze open‑directieven gewoon toe aan je Beancount‑bestand.

; --- US Federal Income & Payroll Taxes ---
; Voor geld dat van je salaris wordt ingehouden
2024-01-01 open Expenses:Taxes:Federal:IncomeTax:Withheld USD
; Voor geschatte betalingen of belasting‑dag rekeningen die je direct betaalt
2024-01-01 open Expenses:Taxes:Federal:IncomeTax:Payments USD
; Voor belasting‑terugbetalingen die je ontvangt
2024-01-01 open Expenses:Taxes:Federal:IncomeTax:Refunds USD

; Je FICA‑bijdragen
2024-01-01 open Expenses:Taxes:Federal:SocialSecurity USD
2024-01-01 open Expenses:Taxes:Federal:Medicare USD

; --- Andere veelvoorkomende belastingen ---
; Voor omzet‑/gebruikstaks die je betaalt bij aankopen
2024-01-01 open Expenses:Taxes:Sales USD

; --- Rekeningen voor einde‑jaar aanpassingen (optioneel maar aanbevolen!) ---
; Een tijdelijke holding‑rekening voor belastingen die je verschuldigd bent maar nog niet hebt betaald
2024-01-01 open Liabilities:AccruedTaxes:Federal:Income USD
; Een tijdelijke holding‑rekening voor een terugbetaling die je nog moet ontvangen
2024-01-01 open Assets:Tax:Receivable USD

Deze opzet scheidt ingehouden belastingen van directe betalingen en terugbetalingen, waardoor je in één oogopslag ziet waar je geld naartoe is gegaan. De Liabilities‑ en Assets‑rekeningen zijn ons geheime wapen om einde‑jaar rapportage accuraat te houden.


Voorbeeld 1: Het salaris

Boek een typisch salaris waarbij belastingen automatisch worden ingehouden. De sleutel is eerst je brutosalaris te registreren, daarna laten zien hoe het wordt opgesplitst tussen belastingen en het geld dat daadwerkelijk op je bankrekening terechtkomt.

2025-07-15 * "Employer Inc." "Salary for first half of July"
Income:Work:Salary -6,000.00 USD
Expenses:Taxes:Federal:IncomeTax:Withheld 1,200.00 USD
Expenses:Taxes:Federal:SocialSecurity 372.00 USD
Expenses:Taxes:Federal:Medicare 87.00 USD
Assets:Cash:Checking 4,341.00 USD

Deze enkele transactie vertelt het hele verhaal:

  • Je hebt $6.000 bruto verdiend.
  • $1.200 daarvan is naar de IRS gestuurd voor federale inkomstenbelasting.
  • 372gingnaarSocialSecurityen372 ging naar Social Security en 87 naar Medicare.
  • De resterende $4.341 is wat je netto hebt ontvangen.

Pro‑tip: Je kunt metadata van je loonstrookje (bijv. pay_period_end: "2025-07-15") aan de transactie toevoegen voor een eenvoudig audit‑pad.


Voorbeeld 2: Je aangifte indienen (Het jaar‑overstijgende probleem)

Hier is het scenario dat mensen vaak in de war brengt: Het is april 2025 en je doet je 2024‑aangifte. Je ontdekt dat je, na al het ingehouden, nog een extra $3.000 moet betalen.

Hoe registreer je dit? Je wilt de kost laten meetellen in 2024, maar de cash‑betaling gebeurt in 2025. Hieronder twee uitstekende manieren.

Optie A: Handmatige twee‑stappen accrual

Deze methode is pure Beancount, geen plugins nodig. Het is een duidelijke, twee‑stappen aanpak.

Stap 1: Erken de kost aan het einde van het belastingjaar.
Op de laatste dag van 2024 maak je een “true‑up” entry. Er beweegt nog geen cash; je erkent alleen de kost en parkeert deze in een tijdelijke liability‑rekening.

2024-12-31 * "Federal income tax true-up for 2024"
Expenses:Taxes:Federal:IncomeTax:Payments 3,000.00 USD
Liabilities:AccruedTaxes:Federal:Income -3,000.00 USD

Nu toont je resultatenrekening van 2024 deze $3.000 kost correct.

Stap 2: Registreer de cash‑betaling wanneer deze plaatsvindt.
In april 2025, wanneer je het geld daadwerkelijk naar de IRS stuurt, maak je de liability leeg.

2025-04-15 * "IRS" "Payment for 2024 tax return"
Liabilities:AccruedTaxes:Federal:Income 3,000.00 USD
Assets:Cash:Checking -3,000.00 USD

Je 2024‑rapporten zijn correct, en je cash‑flow van 2025 ook. Perfect! Ditzelfde patroon werkt omgekeerd voor een terugbetaling — gebruik dan Assets:Tax:Receivable in plaats van de liability‑rekening.

Optie B: Automatiseren met een plugin

Wil je de betaling in één enkele transactie houden, dan kun je de community‑plugin beancount_reds_plugins.effective_date gebruiken. Hiermee kun je een andere “effective date” toekennen aan een regel.

Eerst de plugin inschakelen in je hoofd‑Beancount‑bestand:
plugin "beancount_reds_plugins.effective_date"

Daarna kun je één transactie schrijven; de plugin splitst deze achter de schermen zodat je rapporten accuraat blijven.

; Eén entry; de plugin doet de rest
2025-04-15 * "IRS" "Payment for 2024 tax return"
Assets:Cash:Checking -3,000.00 USD
Expenses:Taxes:Federal:IncomeTax:Payments 3,000.00 USD
effective_date: 2024-12-31

Hier wordt het cash‑gedeelte op 15 april 2025 geboekt, maar de kost wordt retroactief toegepast op 31 december 2024. Het resultaat is hetzelfde als Optie A, maar met een andere workflow.


Wat te doen met omzetbelasting?

Voor de meeste persoonlijke grootboeken is omzetbelasting simpel. Als je het niet terugvordert, splits je het gewoon uit als een eigen kost tijdens een aankoop.

2025-07-19 * "Local Grocery Store"
Expenses:Groceries 12.32 USD
Expenses:Taxes:Sales 1.28 USD
Assets:Cash:Checking -13.60 USD

Zo kun je gemakkelijk bijhouden hoeveel je aan omzetbelasting uitgeeft gedurende het jaar. Als je een bedrijf runt dat met btw werkt, gebruik je een formeler systeem met betaal‑ en vorderingsrekeningen, maar het principe blijft hetzelfde.


Queries die je echt zult uitvoeren

Het hele punt van deze structuur is om antwoorden makkelijk te krijgen. Hieronder enkele BQL‑queries om je belastingbeeld te zien.

1. Wat was mijn totale federale inkomstenbelasting voor 2024?

SELECT cost(sum(position))
WHERE account "Expenses:Taxes:Federal:IncomeTax"
AND date >= 2024-01-01 AND date < 2025-01-01;

2. Hoe splitst dat totaal zich op tussen ingehouden, betalingen en terugbetalingen?

SELECT account, cost(sum(position))
WHERE account "Expenses:Taxes:Federal:IncomeTax"
AND date >= 2024-01-01 AND date < 2025-01-01
GROUP BY account
ORDER BY account;

3. Heb ik nog openstaande belasting‑schulden of vorderingen? (Handig om je werk te controleren!)

SELECT account, units(sum(position))
WHERE account "Liabilities:AccruedTaxes" OR account "Assets:Tax"
GROUP BY account
ORDER BY account;

Als deze query niet‑nul saldi oplevert, betekent dat dat je nog accruals hebt die je niet hebt afgehandeld.


Snelle FAQ

  • Moet ik echt per‑jaar rekeningen hebben zoals Expenses:Taxes:2024?
    Waarschijnlijk niet. De accrual‑methode (of de plugin) houdt een platte rekeningsstructuur schoon en leesbaar. Maak alleen per‑jaar rekeningen als je merkt dat je specifieke queries daardoor makkelijker worden.

  • Kan Beancount mijn belastingen voor me berekenen?
    Niet rechtstreeks, maar het kan de data voorbereiden. Gevorderde gebruikers schrijven scripts die BQL‑resultaten naar belasting‑calculatiesoftware sturen, wat handig is voor een schatting gedurende het jaar.

  • Is dit belastingadvies?
    Nee. Dit is een boekhoudpatroon voor het organiseren van je data. De boekhouding is solide, maar raadpleeg altijd een belasting‑professional voor advies dat specifiek op jouw situatie is afgestemd.


Je kant‑klaar checklist

Klaar om te beginnen?

  1. Voeg de rekeningsstructuur toe aan je Beancount‑bestand (en pas namen aan voor jouw land).
  2. Boek salarissen door te beginnen met bruto‑inkomen en vervolgens de belastingposten af te splitsen.
  3. Accrue aan het einde van het jaar eventuele true‑ups voor betalingen of terugbetalingen via een liability/asset‑rekening (of gebruik de effective_date‑plugin).
  4. Volg terugbetalingen als vorderingen en maak ze leeg zodra het geld binnenkomt.
  5. Draai de bovenstaande BQL‑queries om je totalen te verifiëren voordat je aangifte doet.

Houd het saai, houd het consistent, en je belastingseizoen voelt eindelijk als een gewoon onderdeel van je financiële verhaal — niet als een mysterie dat je moet oplossen.

De Magie van Plain Text Boekhouden met Beancount

· 6 minuten leestijd
Mike Thrift
Mike Thrift
Marketing Manager

Ontdek de Magie van Plain Text Boekhouden met Beancount

Beancount.io banner

Introductie

2023-04-18-introductie-tot-beancount

Welkom in een wereld waar boekhouden geen ontmoedigende taak meer is. Vandaag introduceren we u Beancount, een krachtige, flexibele en intuïtieve plain text boekhoudtool. Beancount stelt u in staat om controle te krijgen over uw financiën door een transparante en eenvoudige benadering te bieden voor het beheren van uw geld.

In deze uitgebreide gids duiken we in de basisprincipes van Beancount, leggen we de kernconcepten uit en leiden we u door de eenvoudige doch krachtige functies. Aan het einde van deze blog heeft u een gedegen begrip van Beancount en bent u klaar om het te gebruiken om uw financiële leven te organiseren en te analyseren.

Wat is Beancount?

Beancount is een open-source, plain text boekhoudsysteem, gecreëerd door Martin Blais. Geïnspireerd door John Wiegley's Ledger-systeem, streeft Beancount ernaar een robuuste en betrouwbare methode te bieden voor het beheren van persoonlijke en kleine bedrijfsfinanciën met behulp van plain text bestanden. Met Beancount kunt u eenvoudig uw inkomsten, uitgaven, investeringen en nog veel meer bijhouden.

Waarom Beancount?

Plain text boekhouden biedt verschillende voordelen ten opzichte van traditionele spreadsheet-gebaseerde of software-gebaseerde boekhoudsystemen:

  • Transparantie: Beancount-bestanden zijn menselijk leesbaar, waardoor het eenvoudig is om uw financiële gegevens te begrijpen en te controleren.
  • Flexibiliteit: Beancount kan eenvoudig worden aangepast aan uw specifieke behoeften, en u kunt uw favoriete teksteditor en versiebeheersysteem gebruiken om uw financiële gegevens te beheren.
  • Portabiliteit: Uw financiële gegevens zijn toegankelijk op elk apparaat, en het is eenvoudig om ze over te dragen tussen systemen of te delen met anderen.
  • Toekomstbestendig: Plain text bestanden zijn universeel compatibel, wat garandeert dat uw financiële gegevens toegankelijk blijven, zelfs naarmate technologie evolueert.

Kernconcepten van Beancount

Om Beancount effectief te gebruiken, is het cruciaal om de kernconcepten te begrijpen:

  • Transacties: Financiële gebeurtenissen, zoals inkomsten, uitgaven of overboekingen tussen rekeningen, worden vastgelegd als transacties.
  • Rekeningen: Transacties omvatten één of meer rekeningen, zoals activa, passiva, inkomsten of uitgaven.
  • Dubbele boekhouding: Beancount handhaaft dubbele boekhouding, wat garandeert dat elke transactie gebalanceerde debets en credits heeft.
  • Directieven: Beancount gebruikt een set directieven om transacties, rekeningopeningen en andere financiële gebeurtenissen te definiëren.

Aan de slag met Beancount

Volg deze eenvoudige stappen om Beancount te gaan gebruiken:

  • Installeer Beancount: Installeer Beancount op uw systeem met behulp van de meegeleverde installatie-instructies voor uw besturingssysteem.
  • Maak uw Beancount-bestand: Maak een nieuw plain text bestand met de .beancount extensie (bijv. mijn_financiën.beancount).
  • Definieer uw rekeningen: Gebruik de "open" directive om de rekeningen te definiëren die u in uw transacties zult gebruiken.
  • Registreer transacties: Gebruik de "txn" directive om uw financiële transacties vast te leggen.

Of meld u eenvoudig aan op https://beancount.io. Hier zijn enkele plain text boekhoudvoorbeelden -

Voorbeeld 1: Basis Transactie

2023-04-01 open Assets:Checking
2023-04-01 open Expenses:Groceries

2023-04-10 txn "Grocery Store" "Buying groceries"
Assets:Checking -50.00 USD
Expenses:Groceries 50.00 USD

In dit voorbeeld openen we twee rekeningen, Activa:Betaalrekening en Uitgaven:Boodschappen. Op 10 april 2023 registreren we een transactie voor het kopen van boodschappen ter waarde van $50. De transactie vermindert het saldo van Activa:Betaalrekening met $50 (debet) en verhoogt het saldo van Uitgaven:Boodschappen met $50 (credit).

Voorbeeld 2: Inkomsten- en Uitgavetransactie

2023-04-01 open Assets:Checking
2023-04-01 open Income:Salary
2023-04-01 open Expenses:Rent

2023-04-05 txn "Employer" "Salary payment"
Assets:Checking 2000.00 USD
Income:Salary -2000.00 USD

2023-04-06 txn "Landlord" "Monthly rent payment"
Assets:Checking -1000.00 USD
Expenses:Rent 1000.00 USD

In dit voorbeeld openen we drie rekeningen: Activa:Betaalrekening, Inkomsten:Salaris en Uitgaven:Huur. Op 5 april 2023 registreren we een salarisbetalingstransactie van $2000. De transactie verhoogt het saldo van Activa:Betaalrekening met $2000 (credit) en verlaagt het saldo van Inkomsten:Salaris met $2000 (debet). Op 6 april 2023 registreren we een huurbetalingstransactie van $1000. De transactie vermindert het saldo van Activa:Betaalrekening met $1000 (debet) en verhoogt het saldo van Uitgaven:Huur met $1000 (credit).

Voorbeeld 3: Overboeking Tussen Rekeningen

2023-04-01 open Assets:Checking
2023-04-01 open Assets:Savings

2023-04-15 txn "Bank" "Transfer from Checking to Savings"
Assets:Checking -500.00 USD
Assets:Savings 500.00 USD

In dit voorbeeld openen we twee rekeningen: Activa:Betaalrekening en Activa:Spaarrekening. Op 15 april 2023 registreren we een transactie om $500 over te boeken van de betaalrekening naar de spaarrekening. De transactie vermindert het saldo van Activa:Betaalrekening met $500 (debet) en verhoogt het saldo van Activa:Spaarrekening met $500 (credit).

Deze voorbeelden illustreren de basisconcepten van Beancount's dubbele boekhoudsysteem. Door transacties correct vast te leggen, kunnen gebruikers nauwkeurige overzichten van hun financiële activiteiten bijhouden en rapporten genereren om inzicht te krijgen in hun financiële situatie.

Rapporten Genereren en Gegevens Analyseren

Beancount wordt geleverd met een reeks krachtige tools voor het genereren van financiële rapporten, waaronder balansen, winst- en verliesrekeningen en meer. U kunt ook Fava gebruiken, een webgebaseerde gebruikersinterface voor Beancount, om uw financiële gegevens te visualiseren en ermee te interacteren. https://beancount.io is gebouwd op Fava met MIT-licentie.

Conclusie

Omarm de kracht en eenvoud van plain text boekhouden met Beancount. Door de kernconcepten te begrijpen en de stappen in deze gids te volgen, bent u goed op weg om uw persoonlijke of kleine bedrijfsfinanciën met gemak en precisie te beheren. Naarmate u meer vertrouwd raakt met Beancount, kunt u geavanceerde functies en aanpassingen verkennen om het systeem af te stemmen op uw unieke behoeften.

Of u nu uw uitgaven wilt bijhouden, wilt plannen voor de toekomst, of inzicht wilt krijgen in uw financiële gewoonten, Beancount biedt de flexibiliteit en transparantie die nodig zijn om uw doelen te bereiken. Met zijn gebruiksvriendelijke benadering heeft Beancount het potentieel om de manier waarop u uw financiën beheert te revolutioneren en u in staat te stellen de controle over uw financiële toekomst te nemen.

Nu u een solide basis in Beancount heeft, is het tijd om aan uw plain text boekhoudreis te beginnen. Zeg vaarwel tegen omslachtige spreadsheets en ingewikkelde software, en verwelkom de wereld van Beancount. Veel plezier met boekhouden!