BTW in de EU: simpel in theorie, complex in de praktijk
Verkoop je vanuit Nederland aan klanten in andere EU-landen? Dan heb je te maken met verschillende BTW-regels per land, per klantype en per situatie. Nederland 21%, Duitsland 19%, Frankrijk 20%, België 21% — en dat zijn alleen de standaardtarieven. Verlaagde tarieven, vrijstellingen en uitzonderingen maken het nog complexer.
Voor een consumentenwebshop gelden sinds juli 2021 de OSS-regels (One Stop Shop). Verkoop je boven de drempel van €10.000 aan andere EU-landen? Dan betaal je BTW in het land van de klant. Een maatwerk webshop berekent automatisch het juiste tarief op basis van het afleveradres.
B2B: intracommunautaire leveringen
Bij verkoop aan zakelijke klanten in andere EU-landen wordt het interessanter. Als je klant een geldig BTW-nummer (VAT-nummer) heeft, factureer je met 0% BTW. Dit heet een intracommunautaire levering. De BTW wordt verlegd naar de klant, die het in zijn eigen land aangeeft.
Klinkt simpel, maar de voorwaarden zijn strikt:
- Het VAT-nummer van de klant moet geldig zijn op het moment van de transactie
- De goederen moeten daadwerkelijk naar een ander EU-land worden vervoerd
- De factuur moet specifieke vermeldingen bevatten ("BTW verlegd" / "Reverse charge")
- Je moet de intracommunautaire levering correct opnemen in je BTW-aangifte en ICP-opgave
Eén fout en je bent alsnog de BTW verschuldigd. Automatisering is hier geen luxe maar een noodzaak.
VAT-nummervalidatie via VIES
De Europese Commissie biedt de VIES-database (VAT Information Exchange System) aan waarmee je BTW-nummers realtime kunt valideren. Een maatwerk webshop integreert hier direct mee:
- Registratie — Klant vult zijn VAT-nummer in bij het aanmaken van een account of bij de checkout
- Realtime validatie — Het systeem controleert het nummer direct via de VIES SOAP- of REST-API
- Feedback — Bij een geldig nummer wordt automatisch 0% BTW berekend. Bij een ongeldig nummer krijgt de klant direct een melding
- Logging — Elke validatie wordt gelogd met datum, resultaat en het geretourneerde bedrijfsadres als bewijsvoering voor de Belastingdienst
Die logging is cruciaal. De Belastingdienst kan bij een controle vragen om bewijs dat je het VAT-nummer hebt gevalideerd op het moment van de transactie. Zonder dat bewijs kun je aansprakelijk worden gesteld voor de BTW.
Technisch: hoe bouw je dit?
In een Laravel-webshop bouwen we de BTW-logica als een dedicated service die meerdere verantwoordelijkheden heeft:
BTW-tariefbepaling
Op basis van het afleverland, het klantype (B2B/B2C) en de productcategorie wordt het juiste BTW-tarief bepaald. De tarieven worden centraal beheerd en zijn eenvoudig bij te werken wanneer een EU-land zijn tarief wijzigt — wat regelmatig gebeurt.
VIES-integratie
De koppeling met VIES draait via een API-integratie die asynchroon werkt. De validatie wordt in de achtergrond uitgevoerd zodat de checkout niet vertraagt. Bij een time-out van de VIES-service (wat helaas regelmatig voorkomt) wordt de validatie gequeued en later opnieuw geprobeerd.
Factuurlogica
De factuur in je boekhoudpakket moet de juiste BTW-vermelding bevatten. Bij intracommunautaire leveringen: 0% met vermelding "BTW verlegd" en het VAT-nummer van de klant. Bij B2C-verkoop naar een ander EU-land: het lokale BTW-tarief met vermelding van het land.
OSS: One Stop Shop voor B2C
Sinds 1 juli 2021 kun je als Nederlandse ondernemer de BTW voor alle EU-landen via één aangifte in Nederland afdragen. Dat heet de One Stop Shop (OSS). Je hoeft je niet meer in elk EU-land apart te registreren voor BTW.
Wat betekent dit voor je webshop?
- Bij B2C-verkoop boven €10.000 per jaar aan andere EU-landen: BTW berekenen op basis van het land van de klant
- De webshop moet het afleverland correct detecteren en het juiste tarief toepassen
- Per kwartaal doe je een OSS-aangifte bij de Belastingdienst, met uitsplitsing per land
- Je boekhoudpakket moet de omzet per land apart registreren zodat de aangifte klopt
Een maatwerk webshop genereert deze uitsplitsing automatisch. Geen handmatige berekeningen, geen Excel-lijsten met omzet per land.
Veelgemaakte fouten
In de praktijk zien we regelmatig dezelfde fouten bij webshops die internationaal verkopen:
- Geen VIES-validatie — Het VAT-nummer wordt wel gevraagd maar niet gevalideerd. Bij een controle ben je alsnog de BTW verschuldigd
- Geen logging — De validatie wordt wel uitgevoerd maar niet gelogd. Zonder bewijs heb je een probleem
- Verkeerde factuurtekst — "BTW verlegd" ontbreekt op de factuur, of het VAT-nummer van de klant staat er niet op
- ICP-opgave vergeten — Intracommunautaire leveringen moeten apart worden opgegeven. Je boekhouding moet deze data kunnen exporteren
- OSS-drempel niet bijgehouden — Zodra je boven de €10.000 komt, moet je overschakelen naar lokale BTW-tarieven. Dat moet automatisch gebeuren, niet handmatig
De boekhoudkoppeling maakt het af
BTW-logica in je webshop is de helft van het verhaal. De andere helft zit in je boekhouding. De factuur die je webshop genereert moet naadloos landen in Exact Online, Moneybird of Twinfield — met de juiste BTW-code, het juiste grootboek en de juiste vermelding.
Dat betekent dat de webshop en het boekhoudpakket dezelfde BTW-codes gebruiken. Een intracommunautaire levering krijgt een andere BTW-code dan binnenlandse verkoop. Je accountant opent het boekhoudpakket en ziet direct welke omzet binnenlands is, welke intracommunautair en welke onder OSS valt.
Volgende stap
Verkoop je internationaal of wil je je webshop klaarmaken voor EU-verkoop? Lees ook over meertalige webshops of neem contact op om de mogelijkheden te bespreken. We bouwen de BTW-logica, VIES-koppeling en boekhoudintegratie zodat jij en je accountant geen omkijken meer hebben naar de BTW-aangifte.