FlowParse
Functie 12 augustus 2026 13 min leestijd

Btw-tarief-splitsing

Eén factuur kan meerdere btw-tarieven op één document dragen — eten tegen het lage tarief, drank tegen het hoge, op dezelfde rekening. FlowParse leest elke regel met haar eigen tarief en houdt de bedragen per tarief uit elkaar, tot in de export.

FlowParse
flowparse.io
flowparse.iogeen geluid nodig
0:00 / 0:00

Eén factuur, meerdere tarieven

De aanname achter veel simpele factuurverwerking is dat een factuur één btw-tarief draagt: één percentage, één btw-bedrag, klaar. Voor een groot deel van de facturen klopt dat ook. Voor een ander deel — horeca, detailhandel, groothandel, gemengde bestellingen — klopt het niet, en juist die facturen zijn waar handmatige verwerking het vaakst misgaat.

Deze pagina gaat over die tweede groep: facturen waarop meerdere tarieven naast elkaar voorkomen, en hoe je daar toch een betrouwbare uitsplitsing per tarief uit krijgt, zonder dat iemand met de hand door elke regel hoeft te gaan.

Waarom gemengde tarieven lastig zijn

Het probleem zit niet in het lezen van één bedrag — dat lukt met de simpelste extractie. Het probleem zit in de aanname die daarna volgt: één bedrag aan btw, dus één tarief. Op een factuur met twee tarieven produceert die aanname een cijfer dat er precies zo uitziet als een goed cijfer, en toch verkeerd is.

Het gevolg merk je meestal niet meteen. Het totaal van de factuur klopt nog steeds — daar is niets mis mee. Wat misgaat, is de verdeling: omzet die eigenlijk tegen 9% hoort, komt tegen 21% in de aangifte terecht, of andersom. Dat is geen fout die een controle van het factuurtotaal ooit zou vangen, omdat het totaal zelf onaangetast blijft.

Bij een enkele factuur is dat verschil klein en makkelijk te negeren. Bij honderd facturen per kwartaal, waarvan een deel gemengde tarieven draagt, telt diezelfde kleine verschuiving elke keer opnieuw op — niet naar een groot bedrag per factuur, maar naar een merkbare afwijking in de totale verdeling per tarief tegen het eind van het kwartaal.

FlowParse
flowparse.io

Splitsing op het niveau van de regel

De oplossing zit niet in slimmer optellen, maar in eerder lezen: het tarief wordt vastgesteld per regel, voordat er iets wordt samengevoegd. Elke regel op een factuur draagt haar eigen tarief zoals de leverancier het heeft vermeld, en dat tarief reist mee tot in de export.

Dat is een klein verschil in volgorde met een groot verschil in uitkomst. Optellen en dan uitsplitsen vertrouwt op een correcte nabewerking van een bedrag dat de onderliggende structuur al kwijt is. Uitsplitsen en dan optellen behoudt die structuur helemaal tot aan het eind.

FlowParse
flowparse.io

Waar dit in de praktijk voorkomt

SituatieTypische verdeling
Cateringrekening9% op eten, 21% op drank en bediening
GroothandelsfactuurBeide tarieven door elkaar, regel voor regel
Bouwmarktbon21% op materiaal, soms verlegd op arbeid
Boekhandel met kantoorartikelen9% op boeken, 21% op de rest van de bestelling
Hotelfactuur met extra's9% op logies, 21% op minibar en parkeren

Vijf situaties, en geen ervan is uitzonderlijk — dit zijn juist facturen die dagelijks door een gemiddelde administratie heen gaan. De gemene deler is dat de leverancier de verdeling wél op de factuur zet, alleen niet altijd overzichtelijk samengevat: soms als twee subtotalen, soms als losse regels zonder tussentelling.

De rekensom per tarief

Een uitsplitsing zonder controle is precies zo kwetsbaar als het probleem die ze moet oplossen. Daarom wordt niet alleen het factuurtotaal nagerekend, maar ook elk tarief afzonderlijk: de som van de grondslagen bij 21% plus de som bij 9% plus de overige categorieën moet het bedrag exclusief btw van de hele factuur opleveren.

Die extra controlelaag vangt precies het probleem op waar een simpele totaalcontrole blind voor is — een regel die aan het verkeerde tarief is toegewezen, terwijl het totaal zelf onveranderd correct blijft.

FlowParse
flowparse.io

Verlegd en vrijgesteld op dezelfde factuur

Percentages zijn niet de enige categorieën. Een factuur kan een deel tegen een gewoon tarief tonen en een ander deel als verlegd of vrijgesteld — een aannemer die materiaal levert tegen 21% en arbeid onder de verleggingsregeling factureert, bijvoorbeeld.

Verlegde en vrijgestelde regels krijgen geen percentage toegewezen maar een eigen categorie, apart van de reguliere tarieven. Zo blijft het onderscheid intact tussen “dit bedrag draagt 0% omdat het is vrijgesteld” en “dit bedrag draagt geen btw omdat de afnemer hem zelf aangeeft” — twee heel verschillende dingen die toevallig hetzelfde uitzien op de bodemregel.

FlowParse
flowparse.io

Zo werkt de splitsing

1

Factuur uploaden

Eén factuur of een stapel — de splitsing gebeurt bij elke factuur op dezelfde manier.

2

Elke regel gelezen met haar tarief

Omschrijving, aantal, bedrag en het tarief dat op die specifieke regel van toepassing is.

3

Gegroepeerd per tarief

Alle regels bij 21% samen, alle regels bij 9% samen, verlegd en vrijgesteld als eigen categorieën.

4

Nagerekend per tarief én in totaal

Elke groep afzonderlijk gecontroleerd tegen het factuurtotaal exclusief btw.

5

Geëxporteerd met tarief als kolom

Klaar om over te nemen in je aangifte of je boekhouding, per tarief herleidbaar tot de regel.

FlowParse
flowparse.io

Eén factuur, uitgesplitst

Een cateringrekening voor een bedrijfsevenement: eten, drank en bediening op één factuur, drie tarieven door elkaar.

RegelTariefGrondslag
Catering — eten9%840,00
Catering — dranken21%310,00
Bediening en materiaal21%220,00
Statiegeld / borg0%50,00

Vier regels, drie tarieven, en de bijbehorende btw-bedragen — 75,60 bij het lage tarief, 111,30 bij het hoge — worden per tarief apart bijgehouden in plaats van samengevoegd tot één bedrag van 186,90. Bij één blik op alleen het totaal zou je nooit terugvinden welk deel bij welk tarief hoort; bij deze uitsplitsing wel.

Kortingen en subtotalen die de splitsing bemoeilijken

Een korting op een factuur kan op twee manieren zijn toegepast, en het maakt uit welke. Een korting per regel — 10% op elk artikel in een bestelling — blijft gekoppeld aan het tarief van die specifieke regel, en de splitsing verandert daar niets aan: de grondslag per regel is simpelweg lager dan de lijstprijs.

Lastiger is een korting die als apart totaal onderaan de factuur staat, los van de afzonderlijke regels — “10% korting op het hele bedrag”, zonder aan te geven hoe die korting over de tarieven verdeeld moet worden. In dat geval leest de extractie de korting zoals de factuur hem toont: als eigen post, niet vooraf verdeeld over de tarieven op basis van een aanname die de factuur zelf niet maakt.

Datzelfde geldt voor subtotalen die een leverancier soms tussentijds afdrukt — een subtotaal na de eerste vijf regels, gevolgd door meer regels erna. Die tussentijdse subtotalen worden niet als aparte bedragen meegeteld; ze zijn een leeshulp voor een mens, geen extra grondslag voor de btw-splitsing.

FlowParse
flowparse.io

Handmatig versus automatisch

Handmatig

Iemand ziet één btw-bedrag onderaan en boekt dat op één rubriek, of gaat regel voor regel na welk tarief waar hoort — beide kost tijd en beide is foutgevoelig zodra het volume toeneemt.

Automatisch

Elke regel wordt gelezen met haar eigen tarief, gegroepeerd en nagerekend — dezelfde nauwkeurigheid op de honderdste factuur als op de eerste.

FlowParse
flowparse.io

Van één factuur naar een heel kwartaal

Eén gemengde factuur uitsplitsen is een overzichtelijke oefening — een paar regels, twee of drie tarieven, met de hand nog wel te doen. Honderd van dat soort facturen in een kwartaal is een ander probleem, en precies daar verandert de aard van de moeilijkheid.

Bij één factuur is de vraag: welk tarief hoort bij welke regel. Bij honderd facturen komt daar een tweede vraag bij: welke van die honderd verdient een menselijke blik en welke niet. Zonder een rangorde is het antwoord “allemaal”, wat op die schaal niet meer haalbaar is binnen de tijd die er meestal voor staat.

De rekenkundige controle per tarief levert die rangorde vanzelf: facturen waarvan de grondslagen per tarief optellen tot het bedrag exclusief btw gaan door zonder verdere blik, en de enkele die dat niet doen komen bovenaan te staan. Van honderd facturen blijven op die manier meestal een paar over om echt te bekijken, in plaats van honderd.

FlowParse
flowparse.io

Wat dit oplevert voor je aangifte

De uitsplitsing per tarief is precies de bouwsteen die de btw-aangifte uit facturen nodig heeft: bedragen die al per tarief gescheiden zijn, in plaats van één blok btw dat achteraf nog uitgezocht moet worden. Op facturen met één tarief maakt dat weinig verschil; op facturen met meerdere tarieven is het precies waar handmatige verwerking de meeste tijd en de meeste fouten kwijt is.

FlowParse
flowparse.io

Wat dit niet doet

Geen tariefkeuze namens jou

Het tarief wordt gelezen zoals de factuur het toont, nooit bepaald op basis van wat de extractie zelf gepast acht.

Geen correctie van een verkeerd tarief door de leverancier

Staat er een tarief dat inhoudelijk onjuist is toegepast, dan wordt dat tarief zo overgenomen — de beoordeling blijft bij jou of je boekhouder.

Geen fiscaal advies over welk tarief van toepassing hoort te zijn

Welke categorie bij welk product of welke dienst hoort, is een vraag voor je adviseur, niet voor een uitleeshulpmiddel.

Twijfel je of een tarief op een factuur klopt, dan is dat precies het soort vraag om aan je boekhouder voor te leggen — de splitsing laat je zien wát er staat, niet of het inhoudelijk correct is.

Veelgestelde vragen

Probeer het met een gemengde factuur

Upload een factuur met meerdere tarieven en bekijk de splitsing per tarief — zonder registratie.

Verder lezen