Onze BTW-engine is ontworpen om alle soorten wereldwijde belastingregels te ondersteunen. De wereldwijde belastingengine werkt door een belastingregel aan te maken die bestaat uit belastingklassen en belastingtarieven.
De drie belangrijkste entiteiten die worden gebruikt om de te gebruiken belastingtarieven te bepalen zijn:
BTW klassen - Categorieën of classificaties die je kunt instellen voor je producten en accounts.
BTW tarieven - Een percentage van de belasting die je wilt toepassen in een bepaald land, staat of postcode.
BTW regels - Een combinatie van belastingklassen en -tarieven die wordt gebruikt om het juiste bedrag aan belasting te berekenen.
Wanneer alle belastingtarieven zijn bepaald, wordt de belasting berekend op basis van een verzameling ‘gewone’ belastingen en ‘samengestelde’ belastingen over het oorspronkelijke belastbare bedrag.
Je kunt een belastingregel hebben met de naam “Standaardbelasting”, die het tarief “Standaardverkoop” van 10% toepast, wanneer producten de belastingklasse “Standaard” hebben.
Aan de slag
Ga naar Systeeminstellingen en voeg belastingtarieven, regels en klassen toe onder het kopje “BTW Klassen”.
Klik hier voor meer informatie over het configureren van BTW klassen.
De belasting wordt berekend op elk orderartikel, waarbij de gebruikte techniek wordt bepaald door de 'Belastingberekeningsmethode gebaseerd op' die is ingesteld voor het bedrijf. Elke instelling definieert in principe een andere 'afrondingsmethode' die wordt gebruikt bij het berekenen van de belasting.
1. De eerste stap bij het berekenen van de belasting is het bepalen van alle belastingregels die van toepassing zijn. Dit gebeurt door te zoeken naar alle belastingregels die zowel een productbelastingklasse bevatten (voor het product/de dienst of toeslag), en een accountbelastingklasse voor het account dat aan de order is gekoppeld. Deze lijst met regels wordt vervolgens gesorteerd op oplopende prioriteit. Daarna wordt elke regel doorlopen om alle bijbehorende belastingtarieven te vinden.
2. Nu worden alle regels doorlopen en wordt er een verzameling samengesteld van alle tarieven die moeten worden toegepast. Tijdens dit proces moeten zowel het tarief als de prioriteit van dat tarief (zoals gedefinieerd in de regel) worden vastgelegd. De tarieven die worden gebruikt, worden bepaald door de locatiegegevens van het tarief, waaronder de tarieven die overeenkomen met de locatie‑informatie van óf het account van de order óf het afleveradres
(bedrijfsinstelling: Belastingcalculatie gebaseerd op). Wanneer de lijst met tarieven wordt samengesteld en de verzameling dat tarief al bevat (verschillende regels kunnen hetzelfde tarief bevatten), dan voegen we het tarief alleen toe als de prioriteit verschillend is. De unieke combinatie is hier dus: tarief + prioriteit. Zodra dit is gedaan, hebben we een verzameling tarieven die moet worden toegepast,
met hun bijbehorende prioriteit.
3. Sorteer de verzameling tarieven op prioriteit, zodat tarieven met een lagere prioriteitswaarde eerst worden verwerkt.
4. We moeten nu de tarieven toepassen op het belastbare bedrag (hetzij vóór of na korting, afhankelijk van de bedrijfsinstelling Klant belasting toepassen) met behulp van de hierboven beschreven algoritmen, waarbij ook de juiste afrondingstechniek wordt toegepast. Als er meer dan één tarief moet worden toegepast, dan moet de belasting worden berekend volgens de volgende methode:
Wanneer de belasting wordt berekend en we meerdere opeenvolgende tarieven vinden in de verzameling met dezelfde prioriteit, worden de belastingberekeningen bij elkaar opgeteld (reguliere belasting). Als de prioriteit van opeenvolgende regels niet gelijk is (dus wanneer de huidige regel een hogere prioriteit heeft), dan wordt de belasting samengesteld berekend (compound tax). Voor de Order Totaal‑methode moeten de lopende verschillen (running delta's) worden vastgelegd voor elk van de verschillende tarieven in de orderheader. Deze delta’s kunnen vervolgens worden toegepast en bijgewerkt tijdens het uitvoeren van de individuele belastingberekeningen per tarief.
5. Let op: De bedrijfsinstellingen (Belastingcalculatie methode gebaseerd op, Belastingcalculatie gebaseerd op en Klant belasting toepassen) worden vastgelegd op de order op het moment dat de order wordt aangemaakt. Deze parameters worden vervolgens gebruikt bij het berekenen van de belasting voor de artikelen op de order. Dit voorkomt dat wijzigingen in de bedrijfsinstellingen invloed hebben op de belastingberekening van een bestaande order.
6. Let op: Bij het berekenen van kosten en belasting worden de zeroPricedFlag en discountableFlag gebruikt die zijn vastgelegd op de orderregel, en niet de waarden die op het product zelf zijn opgeslagen. Dit voorkomt dat wijzigingen aan het product invloed hebben op de kostenberekening van bestaande orderregels.