T
Glossary
Tax Engine
A tax engine is the software component that decides how much indirect tax applies to a transaction. It reads the seller's registrations, the buyer's location, and the product's tax category, then returns a rate and an amount for the invoice to carry.
Key Takeaways
Avalara counts "over 12,000 sales and use tax jurisdictions" in the US alone, which is the rate table nobody maintains by hand.
Stripe states that businesses must collect tax in "more than 170 countries and in most US states", and prices calculation across "100+ countries and 600+ product categories".
A tax engine calculates. Registration, filing, and remittance are separate jobs, and vendors bundle them differently.
Stripe Tax charges 0.5% per transaction on its low-code path and US$0.50 per transaction on its API path, so the cheaper option flips at a $100 order value.
Anrok charges by jurisdiction instead of by transaction, at $100 per market per month, where being registered in California, New York, Texas, and the UK counts as four markets.
What does a tax engine do on a single transaction?
It answers one question: what tax amount belongs on this line, right now. Getting there takes a chain of lookups, and every link can change the answer.
The sequence a calculation call runs through:
Resolve the buyer's address to a taxing jurisdiction, which in the US means a state, a county, a city, and often a special district stacked on top of each other.
Check whether the seller has an obligation there. No registration and no economic nexus usually means no tax to collect, and charging anyway creates its own problem.
Classify the product. Stripe prices its calculation service across "600+ product categories" because a downloadable report, a hosted SaaS subscription, and a professional service are taxed differently in the same state.
Apply exemptions. A valid resale or nonprofit certificate zeroes the line regardless of the rate.
Return the rate, the amount, and the jurisdiction breakdown, so the invoice can show the split and the filing can reconstruct it later.
Step five is the one teams underrate. A total without the jurisdiction breakdown is fine until you file, at which point each authority's share has to be reported separately and the data must already be on the record.
Where does a tax engine stop?
Calculation is where it stops, and everything after that is a different service even when one vendor sells both. Confusing the two is how teams end up correctly calculating tax they never remit.
The four jobs, and who typically owns them:
Job | What it involves | Tax engine's role |
|---|---|---|
Nexus monitoring | Tracking where sales cross a registration threshold | Usually included, as a report |
Calculation | Returning the rate and amount per transaction | This is the engine |
Registration | Filing to become a registered collector in a jurisdiction | Separate service, often manual |
Filing and remittance | Submitting returns and sending the money | Separate service, sometimes bundled |
Thresholds are why nexus monitoring rides along. Stripe notes that European registration thresholds "vary from EUR 0 in Spain to GBP 90,000 in the UK", so where an obligation starts is a per-country fact, not a policy you set once.
A merchant of record changes the picture. When another entity is the legal seller, the tax obligation is theirs and you're buying out of the problem rather than automating it.
How do tax engines charge for the work?
Two bases dominate, and they favour opposite shapes of business. Per-transaction pricing tracks order count. Per-jurisdiction pricing tracks how many places you're registered.
Published rates as of 1 September 2026:
Vendor | Basis | Published price |
|---|---|---|
Per transaction, low-code | 0.5% per transaction where registered | |
Per transaction, API | US$0.50 per transaction, including 10 calculation calls | |
Per jurisdiction | $100 per market per month, $50 for eCommerce |
The two Stripe lines cross at a $100 order: below that 0.5% is cheaper, above it the flat 50 cents wins. Stripe also meters the calls at "5¢ per additional calculation API call above 10", which matters if your checkout recalculates on every cart change.
Anrok rewards the opposite profile. It defines a market as "any single jurisdiction where you have a tax obligation and need to register and file", and charges the same monthly fee whether that market produces ten transactions or ten million. A high-volume seller registered in four places pays for four. A low-volume seller registered in forty pays for forty.
Related terms
Tax sits at the end of the billing chain, so these terms show up around it.
Sales Tax for SaaS covers the obligation itself rather than the system that computes it.
Merchant of Record is the route where another entity carries the obligation instead of you.
Billing vs Invoicing marks the boundary the tax line has to be settled before it crosses.
Draft Invoice is where tax recalculates on every change until the totals lock.
Consolidated Invoicing complicates tax, since one document can span entities in different jurisdictions.
Billing Engine produces the line items the tax engine then prices.
FAQ
Is a tax engine the same as tax filing software?
No. A tax engine returns the tax due on a transaction. Filing software prepares and submits returns to each authority on their schedule. Several vendors sell both under one subscription, which is why the terms get used interchangeably, but they fail in different ways: a calculation error shows up on an invoice, a filing error shows up as a penalty.
Do I need a tax engine if I only sell in one country?
Usually yes in the US, often no elsewhere. One country means over 12,000 possible jurisdictions if that country is the United States, with rates stacking by state, county, city, and district. A seller registered in one European country with a single VAT rate on one product type can keep that in a config file.
When should a tax engine run in the billing flow?
At invoice calculation, after line items and discounts are final and before the invoice is issued. Tax applies to the discounted amount, so running it earlier prices the wrong base. Recalculate on any change while the invoice is still in draft, because a changed line changes the tax.
What happens if a tax engine returns the wrong rate?
You either undercollected or overcollected, and both cost money. Undercollection usually means the seller owes the difference out of their own margin, since going back to a customer for tax on a closed sale rarely works. Overcollection means refunds and, in some jurisdictions, an obligation to remit what you collected anyway.
Back to glossary
















