← DeterminedAI home Exposure check Validator Pricing Blog
DETERMINEDAI

Detect. Determine. Register. File.
Full-Stack VAT Automation.

How DeterminedAI replaces Avalara, Vertex, and the consulting layer with Stripe-native exposure monitoring, Claude-powered classification, managed cross-border registrations, and automated multi-jurisdiction filing.

Technical White Paper, May 2026, v2.1

Section 01

Executive Summary

DeterminedAI is a full-stack VAT/GST automation platform built for cross-border SaaS, marketplaces, and digital businesses. One product covers the full lifecycle: detect, determine, register, file.

Legacy engines (Avalara, Vertex, Thomson Reuters ONESOURCE) require manual mapping of every SKU to a proprietary tax code, multi-month implementations, and annual contracts in the five-to-six figure range. They sell the engine but leave exposure analysis, registration, and filing to an army of consultants.

DeterminedAI is the only platform that monitors exposure, determines in real time, registers on your behalf, and files automatically, from one product, one contract, one price sheet. Onboarding is hours, not months. The Compliance subscription bundles registration, the engine, monitoring, and all filings at $99 per jurisdiction per month (EU OSS counts as a single jurisdiction covering all 27 EU countries); engine-only access starts free and tops out at $699/mo. No SOWs, no implementation partners.

Section 02

Why Legacy Tax Engines Fail Modern SaaS

Manual mapping is the bottleneck. Avalara has thousands of AvaTax codes; Vertex has its own taxonomy; ONESOURCE has another. Every SKU must be mapped before a single determination runs. A 500-product catalog across 25 EU countries is a multi-month project before go-live.

Rule engines don't understand context. A keyword matcher sees "software training" and picks one code. It can't distinguish a live instructor-led course (education service, possible reduced rate) from a pre-recorded video (electronically supplied service, standard rate). Wrong assignment, silent miscalculation, every transaction.

They sell determination, not compliance. Legacy engines stop at "what's the rate." Registration in each jurisdiction, return preparation, e-filing: that's all sold separately by their professional services arm or punted to a third-party partner. ViDA, KSeF, FATOORA, MTD: each is a different SOW.

Pricing assumes enterprise. Annual contracts, implementation fees, and per-transaction overage charges scale poorly for early-stage SaaS that just needs to file an EU OSS return on $40k of B2C revenue.

Section 03

Exposure & Nexus Monitoring

Determination only matters once you know where you owe. For nonresident sellers, the hardest question isn't “what's the rate”: it's “which jurisdictions have I already crossed a registration threshold in, and didn't notice?” Avalara, Vertex, and ONESOURCE assume the customer already knows. DeterminedAI starts a step earlier.

Inputs

Threshold engine

A version-controlled threshold registry covers 60+ nonresident regimes: EU OSS Non-Union (no threshold), UK (£0 for digital B2C), Norway VOEC (NOK 50,000), Singapore OVR (SGD 100,000 global + SGD 100,000 to Singapore), Japan JCT (JPY 10M), Australia Simplified GST (AUD 75,000), India OIDAR (no threshold), and the long tail of LatAm, EMEA, and APAC digital-services regimes. Each threshold tracks its window (rolling 12-month, calendar year, prior year, or trailing four quarters) and the metric type (gross revenue, taxable revenue, transaction count, or a combination).

Output

A per-jurisdiction status board with four states: safe (under threshold with comfortable margin), approaching (within 20% of threshold), crossed (over threshold, registration required), and overdue (crossed more than 30 days ago without an active registration). Each row links to the relevant Country VAT guide, the registration pack price, and an estimated back-tax exposure if the threshold was crossed in a prior period.

Why this is a first-class pillar, not a marketing tool

Exposure detection is the on-ramp to the rest of the platform. A seller who learns they've crossed the Norway VOEC threshold sees a one-click path to either the Compliance subscription ($99/jurisdiction/month, registration and ongoing filings included) or a one-off Managed Registration ($499). The Free Exposure Check is genuinely free and has no rate limit; persistence and alerting move into a $29/mo tier. We monetize the action that follows the alert, not the alert itself.

Section 04

System Architecture

A modular pipeline. AI does what AI does best: understand descriptions. Deterministic engines do what must be exact: rates, place-of-supply, ERP codes.

Request Flow: ERP / API Client | v API Gateway : Authentication (JWT / API Key), Rate Limiting | v 1. Transaction Catalog Lookup : Check if product_code has a pre-approved classification | cache hit? Yes → skip to step 3 | No ↓ 2. AI Characterization : Claude classifies description → supply_type + confidence | v 3. Place of Supply : Deterministic engine applies VAT Directive / local rules | v 4. Rate Lookup : Jurisdiction + supply_type + treatment → applicable rate | v 5. ERP Mapping : Translate to ERP-native tax code (NetSuite, Xero, SAP, etc.) | v 6. Response : Supply type, rate, tax amount, ERP code, audit trail

A second pipeline runs in parallel for exposure analysis (same threshold registry and jurisdiction data, different ingestion path):

Exposure Flow: Stripe / CSV / Warehouse API | v Ingestion & Normalization : Resolve customer country, supply type, taxable amount | v Threshold Engine : Per-jurisdiction window + metric evaluation across 60+ regimes | v Exposure Status Board : safe / approaching / crossed / overdue per jurisdiction | v Action Routing : Registration pack → Determination → Return Pack

The AI never sets tax rates. It classifies what a transaction is; deterministic engines decide how it's taxed. Rates stay auditable and reproducible; classification gains real understanding.

Section 05

AI-Powered Transaction Classification

Anthropic's Claude classifies transactions into VAT/GST supply types from natural-language descriptions plus context (countries, B2B/B2C, direction). Domain-specific prompting, structured JSON output, confidence scores, and human-in-the-loop approval.

A keyword matcher sees "software" and picks one code. Claude distinguishes:

25 supply types across 7 categories

Category Supply Types Tax Significance
Digital & Technology Electronically Supplied Service, Telecommunications, Broadcasting, Software License EU Art. 58 B2C rules; TBE place-of-supply; customer-location taxation
Professional & Advisory Consulting, Legal Services, Accounting & Tax, Advertising, Recruitment & Staffing General B2B reverse charge; jurisdiction-specific exemptions for legal/accounting
Real Economy Construction, Freight Transport, Passenger Transport, Accommodation, Food & Beverage, Cultural & Entertainment Domestic reverse charge (construction); reduced rates; place-of-performance rules
Financial & Insurance Financial Services, Insurance Exempt without credit in most jurisdictions; separate Insurance Premium Tax may apply
Health & Education Medical & Healthcare, Education Public-interest exemptions; reduced rates for training; pre-recorded = ESS
Goods Goods (general), Food & Grocery, Pharmaceuticals, Energy Destination-based taxation; import VAT; zero-rated categories (food, medicine)
Platform & IP Intermediary, IP & Royalties Deemed-supplier rules (ViDA); agent vs. principal; IP-specific place-of-supply

Confidence scoring & caching

Every response is structured JSON with a 0.0–1.0 confidence score and reasoning. High-confidence classifications auto-approve; medium and low are flagged for review. Once approved, the (product_code → supply_type) mapping is cached. The AI is not called again for that SKU. AI is onboarding acceleration, not runtime cost.

Human-in-the-loop by design

No AI classification is used in production without explicit approval. Every recommendation can be approved, rejected, or reclassified before it enters the determination cache.

Section 06

Determination Pipeline

Place of Supply

A deterministic engine maps (seller_country, customer_country, customer_type, supply_type) to the taxing jurisdiction with full rule traceability. Implements EU VAT Directive Arts. 44/45/58, the €10,000 micro-business threshold, B2B reverse charge, TBE rules, destination-based goods, and analogous rules outside the EU. Output feeds OSS reporting directly: one return covers all 27 EU member states.

Rate Lookup

5,100+ rate entries across 103 jurisdictions in version-controlled YAML, sourced from the EY Worldwide VAT, GST and Sales Tax Guide 2026. Indexed by country × supply type × treatment (standard, reduced, zero-rated, exempt, reverse charge). Every rate change is a tracked diff. No opaque vendor release notes.

ERP Tax Code Mapping

Some ERPs ship fixed code vocabularies; others (QuickBooks, D365, SAP) use customer-defined strings that only exist inside each installation. We reflect that reality with a two-tier model and never fabricate codes we can't verify.

ERP System Tier Out-of-the-Box Coverage Discovery Required?
NetSuite SuiteTax Tier 1 51 countries of verified Oracle-delivered tax codes (e.g., S-DE, ESSS-FR, RC-GB, TS-AU) across the EU, EEA, UK, LatAm, APAC and MEA No. Ships with verified static defaults.
Xero Tier 1 UK, Australia, and New Zealand editions ship with all verified TaxType enums (e.g., OUTPUT2, DRCHARGE20, ZERORATEDOUTPUT). Singapore edition ships a single verified default (OSOUTPUT). Yes for Xero Global edition. DeterminedAI calls GET /TaxRates during onboarding to discover each org's customer-defined rates.
Sage Intacct Tier 1 (partial) Australia “Australia - GST” tax solution output-side DETAILIDs are verified from developer.intacct.com API examples. Yes for UK “United Kingdom VAT” and “South Africa - VAT” tax solutions. Customers supply output-side detail IDs via the setup API.
QuickBooks Online Tier 2 None. QuickBooks Online tax codes are numeric TaxCodeRef IDs that are company-specific; U.S. editions are additionally overridden by Automated Sales Tax. Yes: discovered via GET /v3/company/{realmId}/query?query=select * from TaxCode during onboarding.
Dynamics 365 Finance Tier 2 None. D365 Sales Tax Codes are free-text strings defined per legal entity via Tax › Indirect taxes › Sales tax codes. No fixed vocabulary exists. Yes: customers supply their per-legal-entity code list during onboarding.
SAP S/4HANA Tier 2 None. SAP tax codes are 2-character alphanumeric codes configured per country via the FTXP transaction. Conventional codes like A1/V1 exist but are not mandated. Yes: customers supply their company-code tax code list during onboarding.

Tier 1 ships verified static defaults from vendor sources (NetSuite SuiteTax docs, the XeroAPI/Xero-NetStandard enum, Sage Intacct API examples), live the moment an API key is issued. Tier 2 discovers codes via the vendor API (QuickBooks TaxCode query) or collects them at onboarding via POST /v1/setup/erp-mapping. Until configured, adapters return null with a warning. We will not invent a code the ERP write API will silently reject. A Raw API endpoint returns determinations without ERP formatting for any system without a dedicated adapter.

Section 07

Managed Registrations & Automated Returns

Determination is table stakes. The work that actually consumes finance teams (getting registered, then filing every quarter) is where DeterminedAI replaces the consulting layer that Avalara and Vertex sell separately.

EU VAT OSS (Non-Union), Irish Revenue

A four-step wizard collects everything Revenue requires (company, contacts, trading history, Verification Code), maps directly to the ROS vatmoss-web form, and tracks status through submission → review → approval → Digital Certificate retrieval. The effective date is calculated automatically (first day of the submission quarter, as Revenue does not backdate), and any pre-OSS exposure is flagged so it can be addressed before the first return.

Once the .p12 Digital Certificate is uploaded, DeterminedAI takes over: quarterly returns are calculated per member state and submitted via ROS automatically. Three secrets (Verification Code, System Password, Certificate passphrase) are encrypted with Fernet keyed to a server-side master key, with append-only audit logging on every reveal.

Canadian provincial registrations

Multi-jurisdiction return filing

JurisdictionFormChannelStatus
EU (Non-Union OSS)OSS quarterlyROS Digital CertificateProduction
United KingdomVAT100HMRC MTD (real-time)Production
IrelandVAT3ROS SOAP/RESTSandbox-ready
New ZealandGST F5IRDSandbox-ready
SingaporeGST F5IRASSandbox-ready
AU, NL, DE, PLBAS / OB / UStVA / VAT-7Native filing APIsIn development

Every filing produces a PDF draft return and an XLSX workpaper for review before submission. Pricing is flat-fee per filing: not a percentage of liability, not bundled into a six-figure ELA.

Operator console

An admin-only workspace runs the managed-services back office: 8-state registration queue (queued → preparing → awaiting_signature → submitted → awaiting_code → activated/rejected/cancelled), filing submission queue, and a shared inbox that parses authority correspondence and auto-attaches enrolment codes to the right account.

Section 08

Free Public Tools

No login, no rate limits, no upsell wall. Used as lead generation but genuinely useful in their own right, and not offered by Avalara or Vertex.

Section 09

DeterminedAI vs. Avalara, Vertex & Thomson Reuters

Capability Avalara / Vertex / ONESOURCE DeterminedAI
Exposure / nexus monitoring Not offered. Customer self-declares jurisdictions. Stripe-native and CSV-driven exposure check across 60+ nonresident regimes; threshold engine with safe / approaching / crossed / overdue states
Product classification Manual mapping to thousands of proprietary tax codes Claude classifies from descriptions, with confidence scoring
Onboarding time Multi-month implementation, often a paid SOW Hours: CSV upload, review, go live
EU OSS registration Sold via professional services or 3rd-party partners Built in: guided wizard, status tracking, included in the Compliance subscription or $499 one-off
OSS quarterly filing Manual or partner-handled Automated via ROS Digital Certificate, included in the Compliance subscription
UK MTD filing Separate Avalara Returns module / Vertex add-on Native real-time submission to HMRC
BC PST / Quebec QST registration Not offered. Refers out to consultants. Managed registration, including QC OTP-relay
Public tools Gated marketing pages Free validator, deadline tracker, e-invoicing tracker, exposure check
Rate database transparency Black-box vendor releases Version-controlled YAML, every diff auditable
Pricing model Annual contracts, implementation fees, per-transaction overage Compliance subscription from $99/jurisdiction/month (EU OSS = 1 jurisdiction); engine-only Free / $249 / $699; no contracts
Stripe-native exposure check Not offered Connect a restricted key, get exposure across 103 jurisdictions
Where the legacy stack still wins

Large enterprises with complex US sales-tax matrices, real-time POS integrations, or US-specific exemption certificate workflows will get more out of Avalara or Vertex today. DeterminedAI is built for cross-border VAT/GST; we are not (yet) a US sales-tax engine. See Section 13.

Section 10

Integration & Data Flow

REST API plus first-class CSV/JSON batch uploads (up to 1,000 transactions/upload), webhook-driven sync, and direct Stripe ingest for B2C SaaS.

Onboarding workflow

  1. Upload transactions: CSV (descriptions, countries, amounts) or connect Stripe directly. Claude classifies each line with a confidence score.
  2. Review & approve: Bulk-approve high-confidence rows; reclassify the rest. Approved mappings are cached.
  3. Configure ERP: Tier 1 (NetSuite, Xero UK/AU/NZ/SG, Sage Intacct AU) ships verified defaults. Tier 2 (QuickBooks, D365, SAP) discovers via vendor API or POST /v1/setup/erp-mapping. Raw API for everything else.
  4. Add registrations: Declare nexus per jurisdiction. Determinations respect it. Need OSS / BC PST / QC QST? File the managed registration from the same screen.
  5. Go live: Point your ERP, billing system, or webhook at /v1/tax/determine.

API request example

POST /v1/tax/determine { "transaction_id": "INV-2026-0042", "transaction_date": "2026-04-05", "seller": { "country": "DE" }, "customer": { "country": "FR", "customer_type": "B2C" }, "line_items": [ { "line_id": "1", "product_code": "SaaS-PRO", "description": "Professional SaaS subscription - project management platform", "amount": 299.00, "quantity": 1 } ] }

API response example

{ "determination_id": "det_8f3a...", "line_results": [ { "supply_type": "electronically_supplied_service", "tax_treatment": "standard", "place_of_supply": "FR", "rate": 0.20, "net_amount": 299.00, "tax_amount": 59.80, "erp_tax_code": "ESSS-FR", "catalog_match": true, "confidence": 0.97 } ], "total_tax": 59.80, "currency": "EUR" }
Section 11

Jurisdiction Coverage

DeterminedAI launches with rate data for 103 jurisdictions across all major economic regions. Each jurisdiction includes rates across all 25 supply types, covering standard rates, reduced rates, zero-rated supplies, and exempt categories.

RegionJurisdictionsKey Markets
European Union 27 member states DE, FR, NL, ES, IT, PL, IE, SE
Europe (non-EU) GB, NO, CH, IS, TR + 10 more UK VAT, Norwegian MVA, Swiss MWST
Asia-Pacific AU, NZ, JP, SG, IN, KR + 12 more Australian GST, India GST, Japan CT
Middle East & Africa AE, SA, EG, ZA, KE, NG + 12 more GCC VAT, South African VAT
Latin America BR, MX, CO, CL, AR, PE + 8 more Brazilian ICMS/ISS, Mexican IVA
Caribbean & Pacific BB, BS, FJ, JM + 6 more Regional VAT/GST systems
North America CA federal + BC, SK, MB, QC GST/HST + provincial PST/RST/QST stack (US sales tax out of scope; see Section 13)

New jurisdictions are added by authoring rate entries in version-controlled YAML. No code changes required. Source: EY Worldwide VAT, GST and Sales Tax Guide 2026, supplemented by primary tax-authority publications.

Section 12

Security & Compliance

Section 13

Scope & Limitations

In scope today

Out of scope (current release)

Section 14

Conclusion

Avalara, Vertex, and Thomson Reuters built tax engines for a world where the customer paid consultants to map products and accountants to file returns. DeterminedAI was built for a world where neither budget exists.

Claude is the intelligence layer. Deterministic engines are the precision layer. Managed registrations and automated filings are the compliance layer. One product, three layers, no SOWs.

Get started

Visit determinedai.co. Free tier is live. Enterprise: security@determinedai.co.