Sales Tax, VAT & Tax Compliance
Calculating, collecting, filing — the part that catches up to you fast.
If you sell to customers in more than one tax jurisdiction (basically: anyone in the US selling more than ~$10k–100k in any state, or anyone selling to the EU / UK / Australia), you need real tax software within your first year.
Tax calculation APIs
- ★ Stripe Tax — built into Stripe Checkout / Billing; reasonable per-transaction fee; calculates + reports + (with Stripe Tax Filing) files. The default if you're already on Stripe.
- ★ TaxJar (Stripe-owned) — broader product; standalone API; also handles filing in the US.
- ★ Avalara AvaTax — enterprise; the heavyweight; covers VAT / sales tax / GST globally; expensive but unmatched coverage.
- Quaderno — friendly indie alternative; great for SaaS; affordable.
- Anrok — modern, US- and SaaS-focused.
- Vertex — enterprise.
- Sphere — competitor; modern.
Merchant of Record (they handle tax for you)
- ★ Lemon Squeezy — MoR; calculates / collects / remits VAT, sales tax, GST. Default for indie SaaS / digital products.
- ★ Polar.sh — MoR; developer-focused.
- Paddle — MoR; mature; good for global SaaS.
- FastSpring — MoR; older.
- Gumroad — MoR; for digital products.
When you use an MoR, you don't think about tax — they file. Trade-off: fees ~5–8% vs. ~3% direct + paying for tax software.
US sales tax specifics
- Nexus — economic (revenue / transaction thresholds) or physical (offices, employees, inventory). When you cross a state's threshold, you're obligated.
- Marketplace facilitator laws — if you sell on Amazon / Shopify / Etsy, the platform often files. Your direct sales still don't.
- TaxJar / Avalara / Anrok all handle the filing in the US.
EU / UK VAT
- ★ VAT registration in each country if you cross thresholds (or use OSS / IOSS schemes for simplicity).
- OSS (One Stop Shop) — single EU registration for selling to EU consumers.
- IOSS (Import One Stop Shop) — for goods ≤ €150 from outside the EU.
- UK has its own scheme post-Brexit.
- Most calculation APIs above handle EU VAT correctly with VIES (VAT number validation) for B2B reverse charge.
Other regions
- Canada GST/HST/PST — Quaderno, Avalara handle it.
- Australia GST — same.
- Brazil, India, Mexico — wildly complex; if you sell there meaningfully, use Avalara or an MoR.
Compliance tools (sales-tax-adjacent)
- See Compliance / SOC2 for SOC 2 / ISO / GDPR.
VAT / GST input validation
- VIES API — free EU VAT number validation; rate-limited.
vat-checker/@checktype/vat— npm wrappers.- Quaderno / Stripe Tax include VAT validation in their APIs.
Invoicing / receipts
- Stripe Customer Portal — auto-generates receipts.
- Quaderno — great for compliant invoices in 100+ countries.
- Sufio, Bookipi, Invoiced — alternative invoice generators.
- DIY with PDF generation — fine until your accountant complains.
Patterns to know
- Track tax by line item, not by total — for refunds and partial returns.
- Store the tax rate at time of sale — don't recompute on refund.
- B2B reverse charge — collect a valid VAT number; charge 0% VAT; show on invoice.
- Tax-exclusive vs tax-inclusive pricing — different defaults per region (US: exclusive; EU: inclusive). Configure per market.
- Audit log — every calculation, source rate, jurisdiction, decision. You will be audited eventually.
Pick this if…
- You're indie / small SaaS: Lemon Squeezy or Polar (MoR) — let someone else handle tax entirely.
- You're already on Stripe: Stripe Tax + Stripe Tax Filing.
- Mid-market SaaS, US + EU: TaxJar or Anrok.
- Enterprise, global, "we sell everywhere": Avalara.
- Indie-friendly direct (not MoR): Quaderno.