---
id: SCR-ACC-BKS-011
title: Tax zones configuration
route: '/console/{tenantId}/configuration/accounting/taxZones'
surface: console
product_area: accounting
module: books
revision: 1
status: draft
design_intent: proposed
implementation_evidence: observed
inference: []
source_sha:
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
  services-accounting: f47cb263875bbc0c5640fba7dae6785ec32695f8
purpose: >-
  Maintain transitional tax coverage, rate tables and unit-specific payable
  destinations, and try an address calculation.
supports:
  - CAP-ACC-BKS-013
permission: accounting.tax-zones.read
entry_from:
  - >-
    '/console/{tenantId}/configuration' (Accounting group in the configuration
    catalogue)
  - Navigation between Accounting setup screens
exits_to:
  - >-
    '/console/{tenantId}/configuration' (Accounting group in the configuration
    catalogue)
displays:
  - field: Zones ordered by matching priority and name
    source: listTaxZones
  - field: >-
      Coverage criteria, explanatory details, class percentages and payable
      destinations for each unit
    source: getTaxZone; listTaxClasses; listGlAccounts; listBusinessUnits
  - field: Address-test results from the Transactions tax calculator
    source: calculateTax (owned by Transactions)
actions:
  - label: Add Tax Zone
    operation_id: createTaxZone
    permission: accounting.tax-zones.create
    confirm: false
  - label: Save (replaces every rate)
    operation_id: updateTaxZone
    permission: accounting.tax-zones.update
    confirm: false
  - label: Deactivate or Activate
    operation_id: updateTaxZone
    permission: accounting.tax-zones.update
    confirm: false
  - label: Delete
    operation_id: deleteTaxZone
    permission: accounting.tax-zones.delete
    confirm: true
  - label: Test Address
    operation_id: calculateTax
    permission: accounting.tax.calculate
    confirm: false
states:
  - empty
  - loading
  - error
  - read-only
  - inactive
validation:
  - BR-CAP-ACC-BKS-013-02
  - BR-CAP-ACC-BKS-013-03
  - BR-CAP-ACC-BKS-013-04
  - BR-CAP-ACC-BKS-013-05
  - BR-CAP-ACC-BKS-013-06
patterns:
  - >-
    Shared configuration list with search, sorting, availability filtering and
    an empty state
  - 'Permission-gated bulk activation, deactivation and deletion'
  - Deletion confirmation; availability changes are immediate
  - Editor unsaved-changes protection
  - Accounting read loading and error panels
  - 'Standard-width page with coverage, details and rates sections'
  - Address-test side panel
component: components/configuration/resources/accounting-tax.tsx
evidence:
  - >-
    react-console at baf6dae3:
    components/configuration/resources/accounting-tax.tsx
  - >-
    react-console:components/configuration/config-list-screen.tsx:changeStatus;
    components/configuration/standard.tsx:standardCapabilities (shared-list
    behavior where applicable)
controls: [TC-IAM-001, TC-IAM-002, TC-IAM-004, TC-IAM-005, TC-AZ-001, TC-AZ-002, TC-AZ-003, TC-AZ-004, TC-AZ-005, TC-AZ-006, TC-TEN-001, TC-TEN-002, TC-TEN-003, TC-DAT-004, TC-LOG-001, TC-LOG-002, TC-LOG-003, TC-LOG-004, TC-LOG-005, TC-PI-001, TC-PI-005]
---

# Tax zones configuration

## What the Screen Is For

Maintain transitional tax coverage, rate tables and unit-specific payable destinations, and try an address calculation.

## What It Shows and Lets People Do

The page editor combines coverage criteria, descriptive notes and rate tables. Each rate can select a payable account per unit. Test Address calls the tax calculator owned by Transactions under its separate calculation permission. Ordinary zone actions use tax-zone permissions.

## States and Errors

A replacement sends the full rate collection and checks the zone version. Every replacement creates fresh rate identities; the screen gives no warning about payable destinations on earlier issued tax lines. Matching criteria and percentage validation run before save, with service errors returned to the editor. Product has not settled the transfer of editable configuration to Commerce.

## Patterns It Must Respect

Shared configuration list with search, sorting, availability filtering and an empty state. Permission-gated bulk activation, deactivation and deletion. Deletion confirmation; availability changes are immediate. Editor unsaved-changes protection. Accounting read loading and error panels. Standard-width page with coverage, details and rates sections. Address-test side panel.
