Invoices & Payments
Tax Rates
Configure sales tax by location for estimates and invoices.
4 min readTax Rates
Overview
Tax rates control sales tax applied to estimates and invoices based on location rules you define. ServiceFlow supports a default rate, state-level rates, and ZIP-specific rates stored in business settings. When TaxJar integration is enabled, you can auto-populate county/ZIP rates for your business’s home state instead of entering every jurisdiction manually.
Tax selection on estimates typically follows customer service address or line-level rules configured in your estimate workflow.
How to access
| Surface | Path |
|---|---|
| Tax rate admin | Settings → Tax Rates (/settings/tax-rates) |
| TaxJar integration (optional) | Settings → Integrations → TaxJar |
What you can do today
- Set a default tax rate applied when no more specific rate matches
- Add, edit, and delete location-based rates (state, city, ZIP)
- Define rate type: default, state, or zip
- Auto-populate rates from TaxJar for counties in your business state (when TaxJar is configured)
- View all configured rates in a sortable table with location and percentage
- Persist rates in business settings used by estimate and invoice builders
Prerequisites
For manual tax setup:
- Administrator or user with business settings permission
- Know your applicable state and local sales tax percentages
For TaxJar auto-populate:
Setup path: Settings → Integrations → TaxJar (
/settings/integrations)- TaxJar account with API key
- TaxJar enabled in integrations with valid API key saved
- Business state set on your business profile (used to determine which counties to fetch)
Step-by-step
1. Set the default rate
- Go to Settings → Tax Rates.
- At the top, set Default Tax Rate (percentage, e.g.
8.25for 8.25%). - Save — this rate applies when no ZIP or state override matches.
2. Add a manual tax rate
- Click Add Tax Rate (or equivalent add action).
- Choose Type: state, zip, or default override as applicable.
- Enter Location label, State, optional City and ZIP, and Rate percentage.
- Add an optional Description for internal reference.
- Save. The rate appears in the table and is available on new estimates/invoices.
3. Edit or delete a rate
- Find the rate in the table.
- Use Edit to change percentage or location fields, or Delete to remove.
- Confirm deletion — existing historical documents keep the tax that was applied at creation time.
4. Auto-populate from TaxJar (optional)
- Ensure TaxJar is connected under Settings → Integrations.
- Confirm your business state is set correctly in business profile settings.
- On Settings → Tax Rates, click Auto-populate from TaxJar (or similar action).
- If rates already exist, confirm Replace Existing Tax Rates when prompted.
- Wait for the fetch to complete — ServiceFlow queries TaxJar per county/ZIP in your state and saves ZIP-type rates.
5. Verify on an estimate
- Create a test estimate for a customer in a taxed jurisdiction.
- Confirm the expected rate appears on the estimate total.
- Adjust customer address or rate rules if the wrong rate applies.
Current limitations
- Tax logic is US-oriented in auto-populate (state/county/ZIP lists); international VAT may need manual rates
- TaxJar auto-populate replaces existing rates when confirmed — back up custom rates first
- ServiceFlow does not file tax returns — rates are for document calculation only
- Complex multi-jurisdiction rules (district overlays) may require multiple ZIP rows or manual review
- Estimate line tax-exempt items depend on price book and estimate settings outside this page
Roadmap
- Real-time TaxJar rate lookup at estimate creation time (beyond bulk populate)
- Canadian GST/PST templates
- Tax category mapping to QuickBooks tax codes when syncing
Related features
- Estimate Builder
- Invoices
- QuickBooks Online Sync
- Customers — service addresses drive jurisdiction