---
id: ADR-ACC-BAT-007
title: Declare no custom-field capability for Accounting batches
product_area: accounting
module: batches
revision: 1
status: proposed
design_intent: confirmed
source_sha:
  services-accounting: f47cb263875bbc0c5640fba7dae6785ec32695f8
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
decision: >-
  No batch-domain record declares custom fields. Ordinary batch, stream and
  routing schemas reject unknown properties, while posting request schemas strip
  those properties.
constrains:
  - DOM-ACC-BAT-001
  - DOM-ACC-BAT-003
  - DOM-ACC-BAT-004
  - DOM-ACC-BAT-005
  - SVC-ACC-BAT-batches
origin: >-
  R2-ARCH-001 D1 (Andrew, 2026-10-19: Accounting has no custom fields), recorded
  at services-accounting:docs/migrations/accounting-modernization/README.md and
  docs/migrations/postgres-indexing/README.md
alternatives:
  - option: Enable extra customer-defined batch or stream attributes.
    why_not: The architecture ruling does not authorize that capability for Accounting.
consequences:
  - >-
    Earlier anticipated stream custom-field support does not define the present
    contract.
  - >-
    Description and code provide ordinary supported text fields, without
    introducing a custom-field declaration.
supersedes: []
evidence:
  - >-
    services-accounting at f47cb263:
    docs/migrations/accounting-modernization/README.md;
    docs/accounting/recurring-batches.md#Operational now;
    modules/batches/metadata/batches.object.ts
  - >-
    services-accounting:modules/batches/aws/api/batch-postings.schemas.ts:BatchPostingRequest;
    no strict unknown-property refusal
---

# Declare no custom-field capability for Accounting batches

## Context

The recorded architecture ruling excludes Accounting from custom-field support; earlier stream notes anticipated support that is not adopted.

## Decision

The decision field restates the existing recorded direction for this design boundary. This examination does not grant a new approval.

## Alternatives Considered

The alternatives above identify the competing implementation choices and their consequences. They preserve the distinction between a recorded product ruling and a proposed engineering boundary.

## Consequences

The consequence rows describe obligations and known implementation limits at this boundary. Related artifact references retain the affected design homes.
