Skip to main content
Reference
DraftLast reviewed 2026-06-23

Data dictionary

This page is a curated map of the core entity groups in the OpenTRMS schema — enough to know which table to look for, not a column-by-column reprint of the internal spec. For full DDL and field-level detail, see the ERD and the per-product Schema catalog. The source for this overview is the backend's docs/DataDictionary_v1.0.md and docs/ERD.mermaid.

auth — identity and entitlements

TablePurpose
auth.usersApplication users
auth.groupsNamed bundles of scopes (FUNCTIONAL groups) — see Scopes & entitlements
auth.group_membersUser-to-group membership
auth.data_entitlementsRow/data-level entitlement grants beyond plain scope checks

event_store — the audit-first core

TablePurpose
event_store.eventsThe immutable, append-only event log — single source of truth; all domain state is derived from replaying these events. UPDATE/DELETE are revoked at the database role level
event_store.idempotencyIdempotency keys so repeated event submissions don't double-apply

See Event sourcing, Event store, and Hash chain for how this schema is used.

Reference data

TablePurpose
domain.instrumentsSharable tradable instruments (bonds, equities, FX pairs, futures, CDS, ...)
domain.counterpartiesTrading counterparties
domain.booksTrading books deals are assigned to
domain.ssisStanding settlement instructions per counterparty/currency
domain.curves, domain.curve_pointsMarket curve definitions and their tenor/rate grid points
domain.fixingsPublished index fixings (e.g. SOFR, CORRA) used for floating-rate resets

Deal lifecycle

TablePurpose
domain.deal_instructions, domain.deal_instruction_itemsDesk-to-trader instructions to execute, amend, terminate, or hedge — claimed and worked before a deal exists
domain.dealsThe central entity — every captured financial transaction, keyed by product_type/asset_class/product_subtype
domain.instrument_eventsLifecycle events on sharable instruments (coupons, calls, maturities, corporate actions)
domain.cashflowsScheduled and realized cashflows for a deal
domain.compliance_checksPre-trade/post-trade compliance check results

See Deal state machine and Capture & STP.

Valuation

TablePurpose
domain.valuationsSummary-level valuation per deal per date (eod, intraday, or manual)
domain.valuation_detailsLine-level valuation detail backing a summary valuation

See Valuation.

Positions

TablePurpose
domain.positionsAggregated position snapshots derived from deals and events

Accounting

TablePurpose
domain.journal_entriesDouble-entry journal headers (initial, accrual, mtm, realized_pnl, settlement, fee, manual, reversal)
domain.journal_linesDebit/credit lines belonging to a journal entry

See Accounting.

Settlement and payment

TablePurpose
domain.settlementsProjected/instructed/sent payment obligations per deal, partitioned by payment_date
domain.netting_setsNetting groupings that collapse multiple settlements into one payment
domain.payment_messagesOutbound payment messages (e.g. SWIFT) generated from settlements
domain.margin_entriesVariation margin calculations (for margined products such as futures)
domain.collateral_movementsCollateral delivered/received against margin calls

See Settlement & netting.

Closeout

TablePurpose
domain.closeout_batches, domain.closeout_itemsBatches and per-deal items for an early-termination/default closeout run
domain.closeout_rulesConfigurable rules driving closeout valuation and netting

See Closeout.

Workflow

TablePurpose
domain.approval_requestsPending/decided approval requests, carrying required_scope, chain_id, and step_order
domain.approval_rulesConfiguration driving which actions require approval and by whom
domain.stp_rulesStraight-through-processing rules that auto-approve or auto-route instructions

See Approval chains.

Audit

TablePurpose
audit.user_actionsEvery user-initiated action, independent of the event store
audit.data_lineageTraceability of derived data back to source events
audit.reconciliationsReconciliation run results
audit.system_eventsSystem-level (non-user) audit events
audit.regulatory_submissionsRecords of regulatory report submissions
audit.config_changesAudit trail of configuration changes

What is not covered here

Credit/risk-limit tables, internal-party records, and bank-account tables are gated by their own scopes (credit:*, risk:*, parties:internal:*, bank_accounts:* — see Scopes & entitlements) but are not part of the docs/DataDictionary_v1.0.md snapshot this page summarizes. For the authoritative, current table list and relationships, use the ERD; for the JSON shape of each product and instrument type, use the Schema catalog.