De opgaaf intracommunautaire prestaties (ICP) bouw je per kwartaal op uit je verkoopfacturen aan zakelijke klanten in andere EU-lidstaten. Uit elk van die facturen haal je drie gegevens: het EU-BTW-nummer van de klant, compleet met landcode; het totaalbedrag aan 0%-regels op die factuur; en of het om een levering (goederen) of een dienst gaat. Treed je in een ABC-keten op als tussenschakel, dan noteer je daarbij de triangulair-aanduiding. Daarna valideer je elk BTW-nummer via VIES, groepeer je de bedragen per klant per kwartaal, en dien je het geheel in via Mijn Belastingdienst Zakelijk.
De opgaaf moet binnen zijn op de laatste dag van de maand na het tijdvak: het eerste kwartaal uiterlijk 30 april, het tweede 31 juli, het derde 31 oktober en het vierde 31 januari. Lever je per kwartaal voor meer dan € 50.000 aan goederen, dan schakel je over op een maandopgaaf; wat dat precies inhoudt en wanneer je weer naar kwartalen terug mag, komt in de laatste stap aan bod.
De ICP staat los van je reguliere BTW-aangifte. Het is een eigen opgaaf met een eigen deadline, en hij raakt alleen ondernemers die zakelijk over de grens leveren binnen de EU: SaaS- en consultancydienstverleners met afnemers in andere lidstaten, webshops die B2B verkopen, en MKB'ers die goederen exporteren naar klanten met een BTW-nummer. Lever je uitsluitend binnen Nederland of aan particulieren, dan heb je met de ICP niets te maken.
Je ICP-aangifte voorbereiden uit verkoopfacturen hoeft geen kwartaalpaniek te zijn. Het lastige zit zelden in het formulier zelf, maar in het verzamelwerk ervoor: uit een stapel PDF-facturen afleiden wie een EU-zakelijke klant is, welk bedrag op welke factuur onder het 0%-tarief valt, en of die regel een levering of een dienst is. Het begint bij een sorteervraag: welke facturen tellen eigenlijk mee voor de ICP, en welke vallen weg?
Welke factuurregels in de ICP horen, en welke niet
Niet elke factuur uit je verkoopadministratie raakt de ICP. De opgaaf gaat uitsluitend over 0%-regels op verkoopfacturen aan zakelijke afnemers die in een andere EU-lidstaat voor de btw geregistreerd zijn. Alles daarbuiten valt weg: binnenlandse Nederlandse facturen, export naar afnemers buiten de EU, leveringen aan EU-particulieren, en je volledige inkoopzijde. Inkoopfacturen horen nooit in de ICP, ook niet als ze van een EU-leverancier komen; de opgaaf is een verkoopverhaal.
De snelste manier om je kwartaalstapel te sorteren is per factuur de klant in één van vier categorieën te plaatsen, op basis van twee kenmerken die op vrijwel elke factuur staan: het klantadres en de aanwezigheid van een geldig EU-BTW-nummer.
- Binnenland: Nederlandse afnemer. Gewone Nederlandse btw, geen ICP.
- EU-zakelijk: afnemer in een andere lidstaat met een geldig EU-BTW-nummer. Dit zijn de facturen die in de ICP terechtkomen.
- EU-particulier: afnemer in een andere lidstaat zonder geldig BTW-nummer. Hier gelden andere regels via de OSS/IOSS-route, niet de ICP.
- Niet-EU: afnemer buiten de EU. Dit is export en blijft buiten de opgaaf.
Binnen die tweede categorie geldt nog een verfijning: alleen het 0%-deel van een factuur hoort in de ICP. Staat er op een factuur aan een EU-zakelijke klant ook een regel met Nederlandse btw, bijvoorbeeld doorberekende lokale kosten of een binnenlandse component, dan blijft die regel buiten de opgaaf. De ICP rekent op factuurregelniveau, niet op factuurniveau.
Het 0%-tarief zelf staat of valt met twee voorwaarden: de afnemer heeft een geldig EU-BTW-nummer, en de factuur voldoet aan de extra factuureisen voor intracommunautaire leveringen. Daartoe horen de vermelding van het BTW-nummer van de afnemer en een aanduiding dat het om een intracommunautaire levering of een btw-verlegging gaat. Loopt je facturatie daar niet op, dan is het 0%-tarief niet houdbaar en hoort de regel ook niet thuis in de ICP. Wie zijn facturen aan klanten over de grens op dit punt wil natrekken, vindt het kader in de factuureisen voor ZZP'ers met EU-klanten.
Een extractie-prompt die je hele kwartaal aan facturen uitleest
De kern van het verzamelwerk is dit: een kwartaal aan PDF-verkoopfacturen omzetten naar één tabel met een rij per factuur, waarin de ICP-velden al klaarstaan. Dat handmatig doen, factuur voor factuur, is precies de kwartaaltaak die je wilt vermijden. Hier komt de extractie-laag in beeld. Met AI-extractie uit verkoopfacturen beschrijf je in gewone taal welke gegevens je nodig hebt, en draait de hele stapel in één bewerking om naar een gestructureerd bestand.
Formuleer die prompt doelgericht, niet als kale veldenlijst. Vertel het systeem wat je aan het voorbereiden bent, dan worden randgevallen in die context afgehandeld:
Ik bereid een opgaaf ICP voor uit een kwartaal verkoopfacturen. Geef per factuur één rij met: klantnaam; EU-BTW-nummer van de klant inclusief landcode; factuurdatum; het kwartaal afgeleid uit die datum; het totaalbedrag aan 0%-regels in euro's; het type levering (Leveringen, Diensten, Triangulair of Niet ICP-relevant); of er vervoersbewijs bij de factuur zit; en een korte motivatie waarom je voor dat type koos.
Die laatste twee kolommen doen het meeste werk in de controle achteraf. De motivatie maakt zichtbaar waarom een regel als levering, dienst of niet-relevant is bestempeld, zodat je bij de review meteen naar de twijfelgevallen kunt springen in plaats van elke rij opnieuw te lezen.
Invoice Data Extraction is op dit verzamelwerk gebouwd. Je uploadt de facturen, beschrijft in één prompt welke kolommen je wilt, en krijgt een Excel-, CSV- of JSON-bestand terug met een rij per factuur. Een heel kwartaal gaat in één opdracht: de batchverwerking neemt tot 6.000 bestanden tegelijk aan en losse PDF's tot 5.000 pagina's, dus ook een gebundelde export met tientallen facturen achter elkaar in één bestand is geen probleem. Elke rij in de uitvoer verwijst naar het bronbestand en het paginanummer, zodat je vanuit het overzicht direct terug kunt naar de originele factuur. Waar het systeem een aanname doet, legt het dat vast in een toelichtende notitie, en dat voedt precies die motivatie-kolom. Omdat je de prompt bewaart, staat dezelfde opzet klaar voor het volgende kwartaal.
Belangrijk is wat de extractie niet doet. Ze valideert geen BTW-nummers tegen VIES en dient niets in bij Mijn Belastingdienst Zakelijk. Ze levert het werkbestand: een gestructureerde rapportage van je verkoopfacturen aan EU-klanten waarop jij vervolgens valideert, aggregeert en indient. Die scheiding is geen beperking maar de juiste rolverdeling, want de validatie en de opgaaf zelf blijven jouw verantwoordelijkheid.
Leveringen of diensten: de classificatie controleren in je overzicht
Eerst een hardnekkig misverstand uit de weg. Het ICP-formulier kent geen codes 1, 3 en 4. Die nummers duiken op in BTW-aangifte-rubrieken en in de mapping van sommige boekhoudpakketten, maar de opgaaf zelf werkt met twee kolommen, Leveringen voor goederen en Diensten, plus een aparte aanduiding voor triangulaire (ABC-)leveringen. Houd die terminologie aan; ze sluit aan op wat je straks op Mijn Belastingdienst Zakelijk invult.
Het verschil tussen leveringen en diensten is in de meeste gevallen rechttoe rechtaan. Fysieke goederen waarvan je het vervoer naar een andere lidstaat kunt aantonen, gaan in de kolom Leveringen. SaaS-abonnementen, consultancy, design, training, hosting en licentievergoedingen gaan in de kolom Diensten. Voor het leeuwendeel van een doorsnee verkoopadministratie is daarmee de kous af.
De aandacht gaat naar de grensgevallen, want daar slaat een automatische eerste classificatie weleens de plank mis. Drie komen vaak voor:
- Digitale goederen. Software die je downloadt of als dienst afneemt telt als dienst, niet als levering, ook al voelt het als een product.
- Gemengde leveringen. Staan er op één factuur zowel goederen als installatie- of dienstwerk, dan splits je de regels over beide kolommen.
- Doorlopende support- of onderhoudscontracten. Dit zijn diensten, ook als ze aan een eerder geleverd goed hangen.
Dit zijn precies de regels om na te lopen, en de motivatie bij elke regel in je overzicht wijst je daar meteen naartoe.
Bij goederen hangt de kolom Leveringen aan bewijs. Voor een intracommunautaire levering tegen 0% moet je kunnen aantonen dat de goederen Nederland daadwerkelijk hebben verlaten richting een andere lidstaat: een CMR-vrachtbrief, een packing list, een dispatch confirmation, of bij eigen vervoer een sluitende eigen vastlegging. Ontbreekt dat vervoersbewijs, dan is de intracommunautaire levering en daarmee het 0%-tarief niet houdbaar, en valt de regel terug naar belaste binnenlandse verkoop. Bij diensten speelt vervoersbewijs niet; daar bepaalt de plaats-van-levering-regel of de afnemer de btw in zijn eigen land verlegt.
Een apart geval is de triangulaire of ABC-levering. Treed je op als tussenpartij, de B in een keten waarbij A in het ene EU-land aan jou verkoopt en jij doorverkoopt aan C in een derde EU-land, dan krijgt die levering niet een gewone vermelding in de kolom Leveringen maar de aparte triangulair-aanduiding. Je komt het niet vaak tegen, maar als het speelt moet je het expliciet markeren.
De automatische classificatie is een startpunt, geen eindoordeel. Het systeem leest factuuromschrijvingen, en omschrijvingen zijn niet altijd eenduidig. De controle van de twijfelgevallen blijft mensenwerk, en het is goedkoper die nu te doen dan een verkeerd ingedeelde levering later uit een ingediende opgaaf te moeten halen.
VIES-validatie: elk BTW-nummer controleren voordat het de ICP in gaat
Het 0%-tarief leunt volledig op een geldig BTW-nummer van je afnemer. Dat nummer moet geldig zijn op het moment van levering, en de enige manier om dat zeker te weten is het te controleren in het VIES-systeem van de Europese Commissie. Loop daarom je hele overzicht langs en valideer elk EU-BTW-nummer voordat een regel de opgaaf in gaat. Dit is een poort, geen formaliteit.
De inzet wordt duidelijk zodra een nummer ongeldig blijkt. Zonder geldig BTW-nummer vervalt de grondslag voor het 0%-tarief, en is in beginsel gewoon Nederlandse btw verschuldigd. Dat raakt twee dingen tegelijk: de oorspronkelijke verkoopfactuur, die je met 0% hebt uitgereikt, en de ICP-regel die je op basis daarvan zou indienen. Een ongeldig nummer haal je dus niet alleen uit de opgaaf; je moet ook de factuur erachter rechtzetten.
Hoe je dat rechtzet, hangt af van het tijdvak. Speelt het in een kwartaal dat nog loopt, dan corrigeer je de factuur en bereken je alsnog Nederlandse btw aan je klant. Gaat het om een ouder tijdvak waarvan de BTW-aangifte al is ingediend, dan loopt de correctie via de hoofdaangifte; in dat geval kun je een suppletie-aangifte indienen om een eerdere btw-aangifte te corrigeren.
Validatie is bovendien geen eenmalige handeling. Een BTW-nummer dat vorig kwartaal nog geldig was, kan inmiddels zijn ingetrokken, bijvoorbeeld omdat de afnemer zijn registratie heeft beëindigd. Controleer daarom per opgaaf opnieuw, ook bij vaste klanten die je elk kwartaal terugziet.
Eén ding nog over de rolverdeling: deze stap staat los van de extractie. Het overzicht levert je de kolom met BTW-nummers, netjes per klant; de VIES-controle voer je daarna zelf uit. Geen enkel extractiebestand neemt die verantwoordelijkheid over, en dat hoort ook zo, want het is de geldigheid op het moment van levering die telt.
Groeperen per klant en indienen: van overzicht naar opgaaf
Na de validatie heb je een schone tabel met één rij per factuur. De opgaaf vraagt iets anders: één rij per klant. Die laatste stap is spreadsheetwerk op je gevalideerde overzicht. Filter eerst op het tijdvak, het kwartaal of de maand waarover je aangeeft. Groepeer vervolgens de regels per EU-BTW-nummer, en tel per klant de bedragen op, apart voor de kolom Leveringen en de kolom Diensten. Wat je overhoudt is het ICP-overzicht dat je daadwerkelijk indient: per EU-zakelijke klant één regel, met zijn BTW-nummer en de totalen aan leveringen en diensten over dat tijdvak.
Dat totaal staat niet op zichzelf. Het opgetelde bedrag van je ICP moet aansluiten op rubriek 3b van je reguliere BTW-aangifte, waarin je dezelfde intracommunautaire leveringen en diensten opgeeft. Lopen die twee niet gelijk, dan klopt er iets niet in een van beide, en dat wil je vóór indiening weten. Het helpt daarom de ICP en de btw-aangifte voorbereiden uit facturen en bonnetjes als één samenhangend kwartaalproces te behandelen in plaats van twee losse klussen.
Of je per kwartaal of per maand aangeeft, hangt af van je goederenomzet. Volgens de Belastingdienst-regels voor het tijdvak van de opgaaf ICP moet een ondernemer die per kwartaal voor meer dan € 50.000 aan goederen levert aan EU-zakelijke klanten, de opgaaf per maand doen; pas na vier opeenvolgende kwartalen onder dat drempelbedrag mag de opgaaf weer per kwartaal. De drempel geldt nadrukkelijk voor goederen. Lever je alleen diensten, dan blijf je kwartaalsgewijs aangeven, hoe hoog je omzet ook is.
De deadline volgt het tijdvak: de opgaaf moet binnen zijn op de laatste dag van de maand erna. Voor de kwartaalaangifte betekent dat 30 april, 31 juli, 31 oktober en 31 januari; bij een maandopgaaf telkens de laatste dag van de daaropvolgende maand.
De indiening zelf doe je via Mijn Belastingdienst Zakelijk, of via een koppeling vanuit je boekhoudpakket of je accountant. Het overzicht dat je hebt opgebouwd is het werkbestand waaruit je die regels overneemt of importeert; de opgaaf indienen blijft een handmatige of gekoppelde stap.
Extract invoice data to Excel with natural language prompts
Upload your invoices, describe what you need in plain language, and download clean, structured spreadsheets. No templates, no complex configuration.
Related Articles
Explore adjacent guides and reference articles on this topic.
Btw-aangifte voorbereiden uit facturen en bonnetjes
Werkbestand voor je btw-aangifte uit inkoopfacturen en bonnetjes — rij per document met datum, leverancier, bedrag excl. btw en btw per tarief.
Loonstroken naar jaaroverzicht: DGA en kleine werkgever
Bouw uit 12 PDF-loonstroken een Excel-jaaroverzicht voor reconciliatie tegen de jaaropgaaf en input voor de loonjournaalpost — voor DGA's en kleine werkgevers.
Medecontractant onderaannemerfacturen verwerken in Excel
Onderaannemerfacturen sorteren tussen medecontractant en 21%, vermelding valideren, en mappen op grid 87, 56 en 59 van de BTW-aangifte.