Cloutyx CLOUTYX
← terug naar blog
Finance

Voorraadwaardering FIFO voor webshops: live laagjes

Finance 28 april 2026 · 6 min leestijd

Eind december. De accountant vraagt om een voorraadlijst per artikel, met inkoopwaarde per stuk. Je opent het exportscherm van het WMS, plakt het in Excel, en begint met VLOOKUPs naar inkoopfacturen van de afgelopen acht maanden. Drie dagen later klopt het ongeveer — en dat "ongeveer" is precies waarom FIFO als eindejaar-exercitie geen werkbaar systeem is.

Onderstaand een praktische handleiding voor controllers die FIFO live willen bijhouden via voorraadlaagjes uit ontvangsten, in plaats van achteraf reconstructie. We gaan in op de boekhoudkundige logica, de datavereisten, en wat dit concreet betekent voor je maandafsluiting.

Waarom FIFO bij webshops vrijwel altijd de juiste keuze is

FIFO (First In, First Out) gaat ervan uit dat de oudste voorraad als eerste verkocht wordt. Voor fysieke producten met een houdbaarheidsdatum, modecollecties of elektronica met snelle prijsdaling sluit dat aan op de werkelijkheid. Voor andere goederen is het op zijn minst een verdedigbare benadering.

De Belastingdienst accepteert FIFO als bestendige gedragslijn voor de jaarrekening, mits je consequent toepast. Wisselen tussen FIFO, gemiddelde inkoopprijs (GIP) of LIFO van jaar tot jaar is geen optie zonder gegronde reden.

Voor webshops met inkopen in vreemde valuta of fluctuerende inkoopprijzen levert FIFO bovendien een nauwkeuriger beeld van de marge. Een voorbeeld: koop je 1.000 stuks van een artikel in maart à €4,20 en 1.000 stuks in september à €5,80, dan is de gemiddelde inkoopprijs €5,00 — maar als je in oktober nog uit de maart-batch verkoopt, is je werkelijke COGS €4,20. Het verschil van €0,80 per stuk is geen ruis, dat is je marge.

Het probleem met de eindejaar-aanpak

De gangbare praktijk in veel MKB-webshops: een keer per jaar, vaak onder druk van de accountant, wordt de voorraad geteld en gewaardeerd. Inkoopfacturen worden teruggezocht, FIFO-lagen worden gereconstrueerd, een eindwaarde rolt eruit.

Wat hier misgaat:

Wat een live FIFO-laagjes-systeem precies doet

In een live systeem ontstaat bij elke goederenontvangst een nieuwe voorraadlaag. Die laag bevat: SKU, aantal ontvangen, inkoopprijs per stuk (inclusief eventuele invoerkosten), datum, en referentie naar de inkoopfactuur.

Bij elke verkoop wordt vervolgens van de oudste nog niet leeggehaalde laag afgeboekt, totdat het verkochte aantal bereikt is. Klinkt simpel — en dat is het ook, mits de data klopt.

Een vereenvoudigd voorbeeld voor SKU "T-shirt-zwart-M":

DatumTypeAantalPrijs/stukLaagsaldo
04-03Ontvangst+200€6,20Laag A: 200 × €6,20
18-04Verkoop-50(uit A)Laag A: 150 × €6,20
02-06Ontvangst+300€6,80Laag A: 150, Laag B: 300 × €6,80
12-07Verkoop-180(150 uit A + 30 uit B)Laag B: 270 × €6,80

De COGS van de verkoop op 12-07: (150 × €6,20) + (30 × €6,80) = €1.134. Voorraadwaarde na deze verkoop: 270 × €6,80 = €1.836. Geen schatting, geen reconstructie.

Wat je nodig hebt om dit werkend te krijgen

Vier datapunten moeten op orde zijn. Laat er één weg, en het systeem produceert onzin.

1. Inkoopprijs per ontvangst, niet per artikel. Veel webshop-systemen onthouden alleen de "huidige" inkoopprijs. Voor FIFO moet je per ontvangst de prijs vastleggen die op die specifieke factuur stond. Inclusief koersverschil bij vreemde valuta.

2. Bijkomende kosten in de inkoopprijs. Vrachtkosten, invoerrechten, inklaringskosten en eventuele anti-dumpheffingen horen bij de kostprijs van de voorraad. De richtlijnen voor jaarverslaggeving (RJ 220) zijn hier expliciet over: alle kosten om het product op locatie en in verkoopbare staat te krijgen tellen mee. Een container uit China van €4.200 over 8.000 stuks is €0,525 per stuk — niet verwaarloosbaar.

3. FIFO-volgorde gekoppeld aan ontvangstdatum, niet besteldatum. Een PO van februari die pas in mei binnenkomt, vormt een mei-laag. Wat boekhoudkundig telt is wanneer het risico op de voorraad overgaat.

4. Synchronisatie tussen voorraadbewegingen en grootboek. Elke laag-mutatie moet een corresponderende grootboekboeking hebben — debet voorraad / credit crediteuren bij ontvangst, debet COGS / credit voorraad bij verkoop. Loopt dat uit de pas, dan klopt je balans niet meer.

Speciale gevallen die controllers vaak vergeten

Retouren. Een teruggekomen product moet idealiter terug naar de laag waaruit het kwam. In de praktijk is dat vaak niet meer te achterhalen, dus pragmatisch: terug naar de oudste nog actieve laag, of een aparte retour-laag tegen laatst-bekende kostprijs.

Bundels en kits. Verkoop je een set van drie producten als één SKU, dan moet de FIFO-afboeking op componentniveau gebeuren. Anders waardeer je de set tegen een verzonnen kostprijs.

Voorraadcorrecties na telling. Een tekort van 12 stuks bij de jaartelling: tegen welke laag boek je dat af? Beste praktijk is naar rato over de aanwezige lagen, gewogen naar aantal. Documenteer de keuze in je grondslagen-paragraaf.

Demo-, marketing- en weggeefvoorraad. Producten die uit voorraad gaan zonder verkoop (influencer-pakketten, beurssamples) zijn ook een uitboeking. Tegen FIFO-prijs, geboekt op een aparte grootboekrekening voor marketingkosten — niet stilletjes uit de voorraadtelling laten verdwijnen.

FIFO-laagjes hebben directe doorwerking op meer dan alleen je voorraadwaarde. Je COGS-cijfer per maand wordt nauwkeurig, wat de basis vormt voor reële tussentijdse winstberekeningen. Voor de BTW-aangifte op kwartaalbasis is dit indirect relevant: hoewel BTW per factuur wordt aangegeven, helpen kloppende voorraadwaardes bij het detecteren van ontbrekende inkoopfacturen — een voorraadlaag zonder onderliggende factuur is een rode vlag.

Voor de aangifte vennootschapsbelasting telt de voorraadwaarde per 31-12 als balanspost. Een afwijking van 5% op een voorraad van €400.000 betekent €20.000 verschil in winst, en bij 25,8% VPB tarief €5.160 verschil in belasting. Dit is geen detail.

Hoe Cloutyx hierbij helpt

In de <a href="https://cloutyx.com/finance">finance-module</a> van Cloutyx ontstaat bij elke goederenontvangst automatisch een FIFO-laag, gekoppeld aan de inkoopfactuur en eventuele bijkomende kostenregels. Bij elke verkoop wordt direct afgeboekt van de oudste laag, en de COGS-boeking loopt synchroon mee in het grootboek. Voor inkopers en magazijn-collega's is dit zichtbaar in de <a href="https://cloutyx.com/purchasing">purchasing-module</a>, waar inkooporders, ontvangsten en de resulterende voorraadlagen in één weergave staan. Geen export naar Excel meer, geen reconstructie in januari.

Conclusie

Drie dingen om volgende week te doen, ongeacht welk systeem je nu gebruikt:

Veelgestelde vragen

Mag ik halverwege het boekjaar overstappen van gemiddelde inkoopprijs naar FIFO?

In principe niet zonder toestemming van de Belastingdienst. Een overstap moet bestendig zijn en gemotiveerd; de gangbare route is per nieuw boekjaar overstappen en dit toelichten in de jaarrekening en grondslagen.

Wat is het verschil tussen FIFO en GIP voor de winstbepaling?

FIFO rekent oudste voorraad eerst af, GIP (gewogen gemiddelde inkoopprijs) middelt elke ontvangst opnieuw uit. Bij stijgende inkoopprijzen geeft FIFO een hogere voorraadwaarde en hogere winst dan GIP; bij dalende prijzen omgekeerd.

Tellen invoerrechten en vrachtkosten mee in de FIFO-inkoopprijs?

Ja. Volgens de Richtlijnen voor de Jaarverslaggeving horen alle kosten om het product op locatie en verkoopbaar te krijgen tot de kostprijs van de voorraad. Dat omvat vracht, invoerrechten, inklaring en directe inkomende handling.

Hoe ga ik om met retouren in een FIFO-systeem?

Idealiter terug naar de oorspronkelijke laag, maar in de praktijk vaak niet traceerbaar. Pragmatische aanpak: terugplaatsen in de oudste actieve laag tegen die laag-prijs, of een aparte retour-laag aanmaken tegen de laatst bekende kostprijs. Documenteer de keuze.

Hoeveel SKU's kun je realistisch met FIFO bijhouden zonder geautomatiseerd systeem?

Onder de 50 SKU's met weinig ontvangsten per maand is een spreadsheet behapbaar. Boven de 200 SKU's of bij meer dan twee ontvangsten per SKU per maand wordt handmatig FIFO foutgevoelig en kost het structureel meer dan een geïntegreerde oplossing.

Deze post is voorbereid met AI-ondersteuning en redactioneel beoordeeld door het Cloutyx-team.