---
id: SCR-ACC-BKS-006
title: Departments configuration
route: '/console/{tenantId}/configuration/accounting/departments'
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 the unit-scoped department vocabulary used to classify financial
  work.
supports:
  - CAP-ACC-BKS-008
permission: accounting.departments.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: Departments in the working unit ordered by code and display label
    source: listDepartments
  - field: 'Department unit, fixed code, required name, description and availability'
    source: getDepartment
actions:
  - label: Add Department
    operation_id: createDepartment
    permission: accounting.departments.create
    confirm: false
  - label: Save
    operation_id: updateDepartment
    permission: accounting.departments.update
    confirm: false
  - label: Deactivate or Activate
    operation_id: updateDepartment
    permission: accounting.departments.update
    confirm: false
  - label: Delete
    operation_id: deleteDepartment
    permission: accounting.departments.delete
    confirm: true
states:
  - empty
  - loading
  - error
  - read-only
  - inactive
validation:
  - BR-CAP-ACC-BKS-008-01
  - BR-CAP-ACC-BKS-008-02
  - BR-CAP-ACC-BKS-008-04
  - BR-CAP-ACC-BKS-008-05
  - BR-CAP-ACC-BKS-008-08
  - BR-CAP-ACC-BKS-016-10
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
  - Side-panel editor with the unit selector first
  - Working-unit filter and a single-row toolbar
component: components/configuration/resources/accounting-setup.tsx
evidence:
  - >-
    react-console at baf6dae3:
    components/configuration/resources/accounting-setup.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-TEN-004, TC-DAT-004, TC-LOG-001, TC-LOG-002, TC-LOG-003, TC-LOG-004, TC-LOG-005, TC-PI-001, TC-PI-005]
---

# Departments configuration

## What the Screen Is For

Maintain the unit-scoped department vocabulary used to classify financial work.

## What It Shows and Lets People Do

The shared list supports department creation, replacement, availability changes and deletion. The side editor starts with the unit and presents the normalized code separately from the required display name.

## States and Errors

Codes are uppercase, limited to twenty characters and fixed after creation; the unit is also fixed. Names are required. New choices use active departments, while the list filter can include inactive records. Existing references, locks and stale replacement versions can produce service refusals.

## 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. Side-panel editor with the unit selector first. Working-unit filter and a single-row toolbar.
