54 lines
1.8 KiB
YAML
54 lines
1.8 KiB
YAML
components:
|
|
schemas:
|
|
LedgerAccountBalance:
|
|
description: Canonical ledger account balance. Current and historical modes have distinct field-presence semantics.
|
|
oneOf:
|
|
- $ref: ./balance.yaml#/components/schemas/CurrentLedgerAccountBalance
|
|
- $ref: ./balance.yaml#/components/schemas/HistoricalLedgerAccountBalance
|
|
|
|
CurrentLedgerAccountBalance:
|
|
description: Current materialized ledger account balance.
|
|
type: object
|
|
additionalProperties: false
|
|
required:
|
|
- ledgerAccountRef
|
|
- balance
|
|
- version
|
|
- lastUpdated
|
|
properties:
|
|
ledgerAccountRef:
|
|
description: Ledger account reference.
|
|
$ref: ../objectid.yaml#/components/schemas/ObjectId
|
|
balance:
|
|
$ref: ../common/money.yaml#/components/schemas/Money
|
|
version:
|
|
description: Materialized account-balance version.
|
|
type: integer
|
|
format: int64
|
|
lastUpdated:
|
|
description: Materialized balance update timestamp.
|
|
type: string
|
|
format: date-time
|
|
|
|
HistoricalLedgerAccountBalance:
|
|
description: |
|
|
Event-time accounting balance reconstructed from posted statement-entry deltas
|
|
where `eventTime <= asOf`. This is not a materialized historical snapshot.
|
|
type: object
|
|
additionalProperties: false
|
|
required:
|
|
- ledgerAccountRef
|
|
- balance
|
|
- asOf
|
|
properties:
|
|
ledgerAccountRef:
|
|
description: Ledger account reference.
|
|
$ref: ../objectid.yaml#/components/schemas/ObjectId
|
|
balance:
|
|
$ref: ../common/money.yaml#/components/schemas/Money
|
|
asOf:
|
|
description: Canonical UTC RFC3339 event-time cutoff used for reconstruction.
|
|
type: string
|
|
format: date-time
|
|
example: '2026-04-23T12:30:00Z'
|