Voorzieningen voor uitgaven in Beancount: Een praktische gids (met copy-paste grootboekvoorbeelden)
Voorzieningen voor uitgaven klinken abstract tot de maand‑einde afsluitingen zich opstapelen. Ze vormen een hoeksteen van correcte accrual accounting, waardoor je financiële rapporten de economische realiteit weerspiegelen, niet alleen het moment waarop cash van hand tot hand gaat. Hieronder vind je een heldere, Beancount‑gerichte walkthrough van wat ze zijn, waarom ze belangrijk zijn en precies hoe je ze boekt, omkeert en rapporteert in je platte‑tekst grootboek.
TL;DR ⚡
- Voorzieningen voor uitgaven zijn kosten die je in deze periode hebt gemaakt maar nog niet hebt betaald. Ze worden geboekt als een verplichting totdat het geld daadwerkelijk uitgaat.
- In Beancount is dit simpel: je debiteert een
Expenses:
‑rekening en crediteert eenLiabilities:Accrued:
‑rekening. Later maak je de verplichting weg wanneer je betaalt.- Om te rapporteren, kun je zien wat je verschuldigd bent op een specifieke datum door een
bean-query
te draaien metCLOSE ON
enCLEAR
voor een schone balans‑snapshot.
Wat is een voorziening voor uitgaven?
Een voorziening voor uitgaven is een kost die een onderneming heeft gemaakt, maar nog niet heeft betaald. Het wordt geboekt op het moment dat de dienst wordt ontvangen of de kost ontstaat, zelfs als de factuur nog niet is binnengekomen of de betaling nog niet verschuldigd is. Deze praktijk volgt het matching‑principe van accrual accounting, dat bepaalt dat kosten in dezelfde periode moeten worden opgenomen als de opbrengsten die ze hebben geholpen te genereren.
Veelvoorkomende voorbeelden:
- Lonen die aan het einde van de maand zijn verdiend maar pas de volgende maand worden uitbetaald.
- Utilities (electriciteit, water) die je in december hebt gebruikt maar pas in januari worden gefactureerd.
- Rente op een lening die gedurende de maand is opgelopen maar nog niet van je rekening is afgeschreven.
Door deze kosten te boeken op het moment dat ze ontstaan, krijg je een veel realistischer beeld van de financiële prestaties van je bedrijf voor die periode.
Hoe Beancount erover denkt (in 30 seconden)
Beancount is een platte‑tekst, dubbel‑postings boekhoudsysteem. Alles is een gedateerde directive of transactie in een tekstbestand. Het systeem is opgebouwd rond vijf kern‑rekeningstypen: Assets, Liabilities, Equity, Income en Expenses.
Boekingen worden altijd gesorteerd op datum. Een belangrijk detail is dat balance
‑asserties worden gecontroleerd voordat transacties van dezelfde dag worden verwerkt. Dit is cruciaal bij het plaatsen van controles en omkeer‑boekingen.
Tot slot biedt de bean-query
‑taal een krachtige, SQL‑achtige manier om rapporten te genereren. Met operatoren als OPEN ON
, CLOSE ON
en CLEAR
kun je precieze “as‑of” weergaven voor financiële overzichten maken.
Je rekeningschema (suggestie)
Een schoon, hiërarchisch rekeningschema is je beste vriend. Voor voorzieningen voor uitgaven is de structuur eenvoudig. Je hebt nodig:
- Een kostenrekening: bv.
Expenses:Utilities
,Expenses:Payroll:Wages
- Een bijbehorende verplichtingsrekening: bv.
Liabilities:Accrued:Utilities
,Liabilities:Accrued:Payroll
- Je kas‑/bankrekening: bv.
Assets:Bank:Checking
Beancount dwingt de vijf top‑level rekeningstypen af. Een nette naamgeving maakt query’s en rapportages later een stuk eenvoudiger.
Het kernpatroon (geen plugin, geen magie)
Dit is de meest directe manier om accruals in Beancount af te handelen. Het bestaat uit twee stappen: de uitgave accrualen aan het einde van de maand en de verplichting wegwerken wanneer je betaalt.
Stap 1: Accrue de uitgave aan het einde van de maand
Op de laatste dag van de periode boek je de uitgave en creëer je de verplichting.
2025-02-28 * "Accrue February electricity" #accrual
Expenses:Utilities 120.00 USD
Liabilities:Accrued:Utilities
Stap 2: Maak de accrual weg wanneer je betaalt
Wanneer de factuur binnenkomt en je betaalt, raak je de kostenrekening niet opnieuw aan. In plaats daarvan debiteer je de verplichtingsrekening om deze te wissen.
2025-03-05 * "Pay Feb electricity - City Power"
Liabilities:Accrued:Utilities 120.00 USD
Assets:Bank:Checking
Dit is de schoonste aanpak voor kleine teams. Het plaatst de uitgave correct in februari en voorkomt dubbele telling in maart. Merk op dat in Beancount een leeg bedrag laten staan het systeem automatisch de transactie laat balanceren.
Alternatief: Omkeer‑boeking op dag 1
Als je de klassieke “auto‑reverse” stijl prefereert, kun je de tegenboeking van je accrual op de eerste dag van de volgende maand plaatsen. Daarna boek je de daadwerkelijke leveranciersfactuur op de kostenrekening zoals gebruikelijk.
Stap 1: Accrue aan het einde van de maand (zoals eerder)
2025-02-28 * "Accrue February electricity" #accrual
Expenses:Utilities 120.00 USD
Liabilities:Accrued:Utilities
Stap 2: Reverse op de eerste dag van de volgende maand
2025-03-01 * "Reverse Feb electricity accrual" #reversal
Liabilities:Accrued:Utilities 120.00 USD
Expenses:Utilities
Stap 3: Boek de betaling zoals gebruikelijk
2025-03-05 * "City Power - February bill"
Expenses:Utilities 120.00 USD
Assets:Bank:Checking
Let op bij controles: balance
‑asserties worden geëvalueerd voordat transacties van dezelfde dag plaatsvinden. Als je het saldo van Liabilities:Accrued:Utilities
wilt controleren, plaats dan de assertie op 2025-02-28
om de accrual te bevestigen of op 2025-03-01
na de omkeer‑transactie om te bevestigen dat het nul is. Plaats je de assertie vóór de omkeer op 2025-03-01
, dan krijg je een fout.
Zes veelvoorkomende accruals (copy‑paste patronen) 📋
Hieronder vind je kant‑klaar voorbeelden voor veelvoorkomende bedrijfs‑accruals.
1. Huur nog niet gefactureerd
2025-01-31 * "Accrue January rent" #accrual
Expenses:Rent 3000.00 USD
Liabilities:Accrued:Rent
2. Lonen verdiend maar niet uitbetaald
2025-03-31 * "Accrue March wages" #accrual
Expenses:Payroll:Wages 8500.00 USD
Liabilities:Accrued:Payroll
3. Vakantiegeld (PTO) verdiend
2025-03-31 * "Accrue PTO earned in March" #accrual
Expenses:Payroll:PTO 900.00 USD
Liabilities:Accrued:Payroll
4. Rente op een lening
2025-02-29 * "Accrue monthly loan interest" #accrual
Expenses:Interest 210.00 USD
Liabilities:Accrued:Interest
5. Professionele kosten (audit/juridisch)
2025-12-31 * "Accrue year-end audit fees" #accrual
Expenses:Professional:Audit 4200.00 USD
Liabilities:Accrued:Professional
6. Utilities gebruikt maar niet gefactureerd
2025-04-30 * "Accrue April utilities" #accrual
Expenses:Utilities 95.00 USD
Liabilities:Accrued:Utilities
Rapportage: “Wat verschuldigd op een bepaalde datum?”
bean-query
is je gereedschap om antwoorden te krijgen. Hieronder zie je hoe je een correcte balans‑snapshot van je voorzieningen kunt maken.
Alle verplichtingsbalansen op period‑einde ophalen
Deze query geeft het saldo van elke Liabilities:Accrued
‑rekening op 31 maart 2025.
bean-query main.beancount '
SELECT account, UNITS(SUM(position)) AS balance
FROM OPEN ON 2025-01-01 CLOSE ON 2025-04-01 CLEAR
WHERE account "^Liabilities:Accrued"
GROUP BY 1
ORDER BY 1;
'
OPEN ON
zet de beginsaldi op de start van de periode.CLOSE ON
snijdt transacties vóór deze datum af (exclusief). Daarom gebruiken we2025-04-01
om data tot en met2025-03-31
te krijgen.CLEAR
maakt Income en Expenses nul, zodat je een schone balans‑view krijgt (Assets, Liabilities, Equity).
Register van alle accrual‑boekingen bekijken
Wil je de ruwe transactiegeschiedenis van je accrual‑rekeningen zien:
bean-query main.beancount '
SELECT date, payee, narration, position
WHERE account "^Liabilities:Accrued"
ORDER BY date;
'
Eén totaal voor alle accruals
Voor een snelle samenvatting van het totale bedrag dat je verschuldigd bent:
bean-query main.beancount '
SELECT UNITS(SUM(position)) AS total_accruals
FROM OPEN ON 2025-01-01 CLOSE ON 2025-04-01 CLEAR
WHERE account "^Liabilities:Accrued";
'
Controles & “Gotchas” specifiek voor Beancount
- Timing van balance‑asserties: Zoals eerder genoemd, worden asserties gecontroleerd aan het begin van de dag.
2025-03-01 balance …
loopt vóór alle transacties op2025-03-01
. Plan hierop. - Naamgeving en hiërarchie: Een nette boom zoals
Liabilities:Accrued:*
is niet alleen esthetisch; hij maakt je queries eenvoudiger en je rapporten direct begrijpelijk. - Pad met voorzichtigheid: De
pad
‑directive kan openingsbalansen fixen, maar vermijd het om terugkerende accruals “te repareren”. Expliciete boekingen geven een helder audit‑trail. - As‑of rapportage: Voor balans‑snapshots gebruik altijd
OPEN … CLOSE … CLEAR
inbean-query
. Zo voorkom je dat inkomsten‑ en kostenrekeningen je verplichtingstotalen vervuilen.
Voorafbetaald vs. Accrued (snel contrast)
Het is makkelijk om deze te verwarren; ze zijn spiegelbeelden:
- Voorziening voor uitgaven: Dienst nu geconsumeerd, cash later betaald → verplichting.
- Voorafbetaalde kosten: Cash nu betaald, dienst later geconsumeerd → actief.
De boekhoudlogica is identiek in Beancount; alleen de rekeningen verschillen (Assets:Prepaid:*
vs. Liabilities:Accrued:*
).
Drop‑in template (begin van bestand)
Hieronder staan de open
‑directieven die je nodig hebt voor de voorbeelden in dit artikel. Voeg deze toe aan de bovenkant van je grootboekbestand.
; --- Accounts (open once) ---
2025-01-01 open Assets:Bank:Checking
2025-01-01 open Expenses:Utilities
2025-01-01 open Expenses:Payroll:Wages
2025-01-01 open Expenses:Interest
2025-01-01 open Expenses:Professional:Audit
2025-01-01 open Liabilities:Accrued:Utilities
2025-01-01 open Liabilities:Accrued:Payroll
2025-01-01 open Liabilities:Accrued:Interest
2025-01-01 open Liabilities:Accrued:Professional
Slotnotities
Als je je boeken op cash‑basis voert, boek je helemaal geen accruals – kosten worden simpelweg geregistreerd op het moment van betaling. Werk je op accrual‑basis, dan zijn de bovenstaande patronen essentieel om kosten te matchen met de periode waarin je de dienst hebt geconsumeerd.
De voorbeelden hier bieden algemene educatieve richtlijnen. Raadpleeg altijd je accountant voor branchespecifieke behandelingen, vooral rond bonussen, loonbelasting en kapitalisatiedrempels.