---
title: How tax is applied
description: Which lines get taxed, tax-inclusive versus exclusive, and what happens when a rate is missing.
domain: invoice
status: shipped
visibility: public
last_verified: 2026-08-01
order: 20
---
When an invoice is generated, yRecurring works out the tax: it finds the right rates for the customer, applies them to the lines that should be taxed, and adds the tax. The tax is worked out once, at generation, and it carries a calculation trace like every other amount. When several rates apply to the same place, each shows as its own component, and every invoice keeps a full per-line, per-component breakdown you can see in the API and on reports.

## What gets taxed

Not everything is taxed. Two things decide whether a line carries tax:

- **The price can be marked non-taxable.** A price has a taxable setting, on by default. Turn it off and lines from that price are never taxed.
- **The customer can be tax-exempt.** A customer marked exempt is skipped entirely, so none of their lines are taxed.

Only taxable lines, for a non-exempt customer, in a place you have a rate for, get tax.

## Tax on top, or tax inside

A price can treat tax two ways:

```viz tax-inclusive-exclusive
```

- **Exclusive:** the price is before tax, and tax is added on top. A $100.00 price at 10% becomes $110.00.
- **Inclusive:** the price already contains the tax. A $100.00 price at 10% stays $100.00, and the tax is the portion inside it, backed out of the total.

Exclusive is the common model where a customer sees a price and tax is added at checkout. Inclusive suits places and prices where the amount shown is the final amount, tax included. An inclusive invoice's document labels the row "Tax (included)" so the totals read correctly, and the inclusive treatment follows the invoice into credit notes and accounting exports.

## Business customers in the EU

If your business is in the EU and you turn on EU reverse charge in Settings, business customers in other EU countries with a validated VAT ID are invoiced at 0%. The invoice carries the required "VAT reverse charged" note, and the customer accounts for the VAT themselves. VAT IDs are checked against the official VIES registry automatically when you set them on a customer. See [EU VAT and reverse charge](/guide/taxes/eu-vat).

## Tax at checkout

Hosted checkout shows the same tax the invoice will carry. As soon as a buyer picks their billing country, the order summary adds a tax line and the amount due today becomes the taxed figure, computed by the same engine that will bill them. The hosted invoice page itself lists each applied rate with its percentage, exactly like the PDF, along with the reverse charge or exemption note where one applies.

## Credit notes

A credit note against a taxed invoice reverses the tax too. A line that credits a specific invoice line inherits that line's tax in proportion to the credited amount, so the books reverse revenue and tax together. Goodwill lines that credit nothing specific carry no tax.

## When a rate is missing

If a customer should be taxed but you have not set up a rate for their region, yRecurring does not block the invoice. It issues the invoice untaxed and flags it clearly, so you can see that tax was left off and why. The "Untaxed invoices to review" report lists every flagged invoice, including ones issued untaxed because a connected tax provider was unreachable.

> [!WARNING]
> Tax is fixed once an invoice is generated. Adding a rate afterward does not re-tax an existing invoice. To tax it correctly, add the rate, then void the invoice and create a new one; the new rate applies going forward.

## Edge cases

- **Tax is quoted once, at generation.** Finalizing an invoice does not recalculate it. Rates resolve as of the moment of generation, so a scheduled rate change applies to invoices generated from its start date, not to the service period they cover.
- **A missing rate means untaxed, not blocked.** The invoice still goes out, with a visible flag rather than a silent zero.
- **Exempt customers and non-taxable prices are never taxed,** regardless of the rates you have set up.
