---
id: CON-ACC-BAT-001
name: Batch
feature: FEAT-ACC-BAT-01
product_area: accounting
module: batches
revision: 1
status: draft
product_intent: proposed
implementation_evidence: observed
source_sha:
  services-accounting: f47cb263875bbc0c5640fba7dae6785ec32695f8
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
definition: A batch groups a business unit’s accounting documents into a named, dated collection that staff gather,
  retire and post together.
owned_by: MOD-ACC-BAT
synonyms:
- transaction batch
- posting batch
- the day's batch
not_to_be_confused_with:
- Recurring configuration supplying successive collections
- Reconciliation’s payout working record
- Platform bulk processing
facets:
- name: Lifecycle position
  meaning: Determines the collection’s stage, from intake through posting or retirement.
  used_for: Selecting appropriate collection and recovery work.
- name: Accounting category
  meaning: Distinguishes transaction, fiscal system and migrated collections.
  used_for: Separating staff work from period-close ownership.
- name: Accounting placement
  meaning: Pairs the collection date with its derived fiscal context.
  used_for: Connecting intake and posting to the fiscal calendar.
- name: Readable identity
  meaning: Combines the unit-unique name with an optional code.
  used_for: Locating collections and presenting report numbers.
- name: Scheduled retirement
  meaning: Identifies an optional time for automatic close and subsequent posting.
  used_for: Finishing intake without a manual close request.
- name: Current and recorded figures
  meaning: Separates document-derived totals from statistics retained at posting.
  used_for: Reviewing collection contents and the completed accounting result.
- name: Downstream relationships and failures
  meaning: Connects related batches and the reasons accounting work could not complete.
  used_for: Planning retry order and investigating missing prerequisites.
- name: Deliberate protection
  meaning: Adds update or deletion protection alongside lifecycle safeguards.
  used_for: Controlling changes and lifting a lock separately when authorized.
- name: Posting attention
  meaning: Connects an awaiting collection to the required attention item.
  used_for: Assigning responsibility and reviewing a posting deadline.
- name: Roll timing
  meaning: Describes recurrence, local time and time zone within the supported frequency.
  used_for: Supplying the next intake collection at the configured occurrence.
- name: Generated labels
  meaning: Uses supported date, unit, currency and configuration variables for names and codes.
  used_for: Giving successive collections predictable labels.
- name: Current intake target
  meaning: Identifies the batch presently referenced by recurring configuration.
  used_for: Receiving assigned transactions into the selected collection.
- name: Initial intake attempt
  meaning: Records the first batch or the reason activation could not create it.
  used_for: Making newly activated configuration usable or diagnosable.
- name: Scheduling activation
  meaning: Controls future occurrences while leaving the existing collection available.
  used_for: Pausing intake turnover without discarding the current batch.
- name: Occurrence record
  meaning: Retains plans and outcomes with the opened and replaced batches and posting request.
  used_for: Investigating successful, skipped and failed rolls.
- name: Routing configuration
  meaning: Defines a unit default and ordered transaction and account criteria.
  used_for: Selecting recurring intake when no explicit batch is supplied.
relationships:
- to: CON-ACC-BAT-003
  statement: Posting history distinguishes the current result from earlier attempts for the collection.
  provenance: test
  source: services-accounting:modules/batches/tests/integration/services/persistence/subledger-entries.integration.spec.js#refuses
    a second unreversed posting of one batch, by the partial unique index
- to: CON-ACC-BAT-004
  statement: Ledger entries connect the collection to its accounting date and fiscal placement.
  provenance: test
  source: react-console:acceptance/accounting/playwright/journeys/batches-posting/ACT-ACC-0550.spec.ts#ACT-ACC-0550
lifecycle:
- state: open
  meaning: The collection is available for intake and eligible edits.
  how_it_changes: Manual or scheduled retirement, archiving or posting advances its work.
- state: closed
  meaning: Intake has ended and accounting work is waiting.
  how_it_changes: Posting completes the accounting work; reopening or archiving changes its use.
- state: posting
  meaning: Accounting execution is in progress.
  how_it_changes: Completion records a posted result or failure details.
- state: posted
  meaning: Accounting work has completed and ordinary document changes are protected.
  how_it_changes: Eligible administrator recovery returns the collection to Open.
- state: error
  meaning: The last accounting attempt failed without its ledger result.
  how_it_changes: Correction allows another attempt or reopening for intake.
- state: archived
  meaning: The collection has been retired from ordinary use.
  how_it_changes: Unarchiving makes it Open again.
acted_on_by:
- CAP-ACC-BAT-001
- CAP-ACC-BAT-002
- CAP-ACC-BAT-003
- CAP-ACC-BAT-004
- CAP-ACC-BAT-005
- CAP-ACC-BAT-006
- CAP-ACC-BAT-007
- CAP-ACC-BAT-008
- CAP-ACC-BAT-010
- CAP-ACC-BAT-013
- CAP-ACC-BAT-020
- CAP-ACC-BAT-009
- CAP-ACC-BAT-011
visible_to:
- ACT-ACC-006
- ACT-ACC-007
- ACT-ACC-012
evidence:
- 'Examined pinned services-accounting (f47cb263): db/batches.table.ts, db/batches.view.ts, services/rules/batch-rules.ts,
  services/persistence/batches.ts, batch-totals.ts, services/actions/batch-actions.ts, services/rules/batch-attention-rules.ts;
  docs/migrations/transaction-processing/batches/README.md.'
- 'Examined pinned react-console (baf6dae3): components/accounting/batches/** (list, new, detail, edit); acceptance
  inventory CAP-ACC-BAT-001 to 004, 016, 017.'
- 'Examined pinned services-accounting (f47cb263): db/recurring-batches.table.ts, batch-assignment-settings.table.ts,
  batch-assignment-rules.table.ts, batch-assignment-vocabularies.ts, services/persistence/recurring-batches.ts,
  batch-assignment-settings.ts, services/roll/**, services/rules/batch-assignment-rules.ts, services/assignment/default-batch.ts;
  docs/accounting/recurring-batches.md.'
- 'Examined pinned react-console (baf6dae3): components/configuration/recurring-batches/**, components/configuration/batch-assignment/**;
  acceptance inventory CAP-ACC-BAT-005 to 007.'
supersedes:
- CON-ACC-BAT-002
---

# Batch

## What It Is

A batch gives a business unit a recognizable collection of accounting documents to work on together. Staff use it to see what has arrived, decide when intake is finished and follow the collection into the ledger. Its identity continues through those stages, so the same record connects document preparation, posting progress and later review. The collection can be created by a person or maintained through recurring configuration. Recurrence describes how batches are supplied; it does not introduce another kind of accounting object.

## What It Is Not

A batch does not replace an invoice, payment or other source document. Those documents retain their own meaning and their own editing experience. A batch also does not mean that its documents have already affected the ledger. Posting supplies that accounting result. A fiscal system batch has the same broad identity but belongs to the period-close process, rather than ordinary staff intake. A recurring configuration is a standing arrangement for supplying batches, rather than the batch in which a particular document is recorded.

## How It Is Used

A preparer starts with a business unit, a date and a useful name. During collection, the batch page gives staff a view of its documents and live totals. Staff can finish intake manually, or scheduling can retire the current collection and supply its replacement. Assignment settings help documents reach a recurring collection without a person choosing a batch for every transaction. Posting responsibility then shifts attention from gathering documents to resolving configuration, checking readiness and completing the accounting work.

The batch remains useful after posting. Its detail connects the original collection to posting history and ledger entries. If posting fails, staff can use the recorded reasons to find the missing prerequisite and coordinate a retry. If a posted collection needs correction, an administrator follows the recovery workflow. Period-close protections still govern what can change. These different responsibilities belong to connected capabilities rather than to a single unrestricted editing operation.

## Its Facets

Identity combines a readable name and optional code with ownership and accounting date. Status describes progress through collection, retirement and posting. Type distinguishes ordinary transactions, migrated history and fiscal system work. Totals describe the collection now, while posted statistics describe the accounting result recorded at posting. Locks supply deliberate protection alongside lifecycle restrictions. Dependencies connect the collection to source documents in other batches, and errors explain a failed attempt.

Recurring facets describe schedule, templates, activation, current-batch selection and run history. Assignment facets describe a default and ordered matching criteria. Attention facets connect a waiting collection to posting responsibility and its deadline. Together these facets let staff understand both a single batch and the continuing flow that supplies the next one.

## How It Relates

Posting turns eligible batch documents into accounting records and retains the history of that work. Subledger entries make the resulting debits and credits readable. Revenue recognition schedules carry deferred amounts forward to later fiscal closes. The batch links these objects to the business unit and collection that produced them, without owning product configuration or document issuance.

## What It Could Become

The product should make readiness easier to assess before staff submit accounting work. It should also make a recurring run’s result and the current intake collection easy to distinguish when a prior batch remains protected. These recommendations need product decisions and acceptance evidence before they become commitments.
