Skip to content

v0.1.2

Choose a tag to compare

@sylvesterdamgaard sylvesterdamgaard released this 16 Jul 17:34

Backward-compatible tax-correctness additions (stays within consumers' ^0.1).

  • EU OSS €10k threshold sourcing (Art. 59c): a below-threshold, non-opted single-Member-State seller charges origin VAT on cross-border B2C; opted-in/over-threshold charges destination. Deny-by-default → destination.
  • Category-aware reduced-rate resolution: the rate-source now honors TaxCategory and can resolve a RateBand (reduced/zero) when the bound source supplies one. No national reduced-rate data is fabricated — bands are source-driven.
  • Per-subdivision return aggregation: returns group by country + subdivision (US state) and per-member-state (EU OSS), so a TaxReturn can drive a real filing.
  • TedbRateSource (config-driven, TAX_TEDB_URL): reads a documented TEDB-derived dataset shape, auto-composed as ChainTaxRateSource(TEDB → static) only when configured. No endpoint hardcoded.
  • Honest US docs: US is marked LOGIC-ONLY / not production-ready — per-state SaaS taxability, rooftop local rates, and nexus thresholds require real datasets before invoicing US customers.

Additive/backward-compatible: SellerRegistrations gained an optional $oss; no consumer signature broke.