Skip to content
Introduction Price $49 −$20
ESC

Searching...

Quick Links

Type to search • Press to navigate • Enter to select

Keep typing to search...

No results found

No documentation matches ""

Tax Basics.

How InvoiceScript handles tax rates, the difference between inclusive and exclusive pricing, rounding rules, and how tax is calculated on an invoice.

May 20, 2026

Tax Basics

For: business owners and bookkeepers who need to understand how InvoiceScript handles tax on invoices.

Tax-exclusive pricing

InvoiceScript uses tax-exclusive (net) pricing. You enter unit prices without tax. Tax is calculated on top of each line item based on the selected tax rate.

This matches how most B2B invoicing works in Europe, North America, and Australia.

Tax rates in basis points

Tax rates are stored as integers in basis points. One basis point is 0.01%. So 21% VAT is stored as 2100, 9% is 900, and 0% is 0.

You do not need to think in basis points. The UI shows percentages. But if you are a developer looking at the database, 2100 means 21.00%.

Why basis points? Floating-point math and money do not mix. Storing 21.00% as the integer 2100 avoids rounding errors in rate storage.

Per-line tax rates

Each line item on an invoice has its own tax rate. This matters when you sell a mix of products or services with different rates.

Example: Northwind Studio invoices Globex GmbH for design work (21% VAT) and a printed annual report (9% VAT) on the same invoice. Each line uses its own rate, and the invoice shows a tax breakdown by rate:

Tax rate Subtotal Tax
BTW 21% €2,000.00 €420.00
BTW 9% €1,140.00 €102.60
Total €3,140.00 €522.60

Grand total: €3,662.60.

How a line is calculated

For a line with quantity 16, unit price €125.00, and tax rate 21%:

  1. Gross = 16 × €125.00 = €2,000.00
  2. Discount = 0 (no discount on this line)
  3. Subtotal = €2,000.00
  4. Tax = €2,000.00 × 21% = €420.00
  5. Line total = €2,000.00 + €420.00 = €2,420.00

All money is stored as integer cents. €125.00 is stored as 12500. Multiplication happens in cents, and rounding to the nearest cent uses the standard half-up rule.

Discounts

Discounts are applied before tax. A 10% discount on a €2,000.00 line reduces the subtotal to €1,800.00, and tax is calculated on €1,800.00.

InvoiceScript supports two discount types per line:

  • Percentage: entered as a percentage (10 for 10%)
  • Fixed amount: entered as a currency amount (€200.00)

Zero-rate and exemptions

A 0% tax rate is valid and common. Use it for:

  • Export sales outside your tax jurisdiction
  • Intra-EU sales where reverse charge applies (use the AE tax category)
  • Tax-exempt goods or services

The invoice shows a 0% line in the tax breakdown, which documents that you considered the tax treatment.

What InvoiceScript does not do

InvoiceScript calculates tax based on the rates you assign. It does not determine which rate applies to a specific product or service. It does not validate VAT numbers. It does not file tax returns.

Your accountant handles tax compliance. InvoiceScript gives them clean, structured invoices to work with.

Ready to build?

One-time purchase. Self-hosted. Own every file forever.

Get InvoiceScript