Skip to content

Components vs combined

Every TaxQL response carries a row’s combined_total_rate (the total applicable rate) plus a components object with per-bucket detail:

row.combined_total_rate # 0.0825
row.components.state # 0.0625
row.components.county # None (no county tax at this row)
row.components.city # 0.02
row.components.special # None
row.components.combined # 0.0825 — equals the sum of non-null buckets
row.components.components_complete # True when every component is accounted for

Use combined_total_rate for invoice display, tax-due math, checkout totals — anywhere the customer just needs to see “your tax is $X.XX.”

Use components for:

  • Compliance reporting to state DoRs that require per-jurisdiction remittance (TX, CA, WA all require this for non-passthrough filers)
  • Reconciliation against your accounting system if it tracks tax by jurisdiction bucket
  • Showing customers the breakdown (“8.25% = 6.25% state + 2% city”) on receipts where transparency matters

When components_complete: false, the breakdown sums to the combined total but the special bucket aggregates multiple districts without per-district detail. The total is correct; the attribution is approximate.

Full content coming soon.