v0.1.0 — self-hostable global tax engine
First release of Cbox Tax — a self-hostable consumption-tax engine for Laravel that owns the calculation logic and sources only rate data behind pluggable contracts. Built on cboxdk/laravel-geo.
Coverage — ~52 jurisdictions, every rate primary-source verified
- EU VAT (27, Art. 44/45/58 + intra-EU B2B reverse charge)
- National VAT/GST: UK, CH, NO, AU, NZ, MX, Singapore, Taiwan, UAE, Saudi Arabia, Bahrain, Oman, Türkiye, Chile, Indonesia, Vietnam, Philippines, Japan, South Korea, Thailand, Ukraine
- India (dual GST — IGST vs CGST+SGST, OIDAR)
- Malaysia (SST — charges B2B+B2C, no reverse charge)
- US sales tax (nexus + per-state taxability + state/rooftop rate) and Canada (province-level)
We omit rather than ship an unverified rate — see docs/coverage for the honest not-yet-supported list (China, Argentina, Pakistan provinces, and a rate-known/mechanics-pending batch).
Capabilities
- Multi-entity / seller-of-record routing (tax = f(seller registrations, buyer, product))
- Reverse-charge with VAT-ID validation (VIES · HMRC · ABN), fail-safe on outage
- Address geocoding (Geocodio) for US rooftop resolution
- Composable rate sources (static · remote feed · caching · chain)
- Return-data aggregation for filing
- Deny-by-default throughout: unmodelled jurisdiction or missing rate → refuse, never a silent 0%
Quality
PHP ^8.4 · Laravel ^12 || ^13. Gate green: pint · phpstan level max · 50 tests · license-check · CycloneDX SBOM · composer audit.
Status: early / pre-1.0. Rates are illustrative defaults unless a live source is bound; external adapters (VIES/HMRC/ABN/Geocodio/remote feeds) implement documented shapes — verify against the live services before production.