Cash
The Cash module is nested under /cash with sub-routes:
| Route | Tab label | Page component |
|---|---|---|
/cash | (redirect) | Redirects to /cash/balances. |
/cash/balances | Balances | CashBalancesPage |
/cash/ocp | OCP | OpenCurrencyPositionPage |
/cash/payments | Payments | PaymentOrdersPage |
/cash/analytics | Analytics | CashAnalyticsPage |
Balances
Section titled “Balances”Path: /cash/balances
The balances view shows CashBalanceGrid rows keyed by book / entity with functional currency rollups. Toolbar filters:
- Entity dropdown (options from API entity list or inferred from loaded balances).
- Currency multi-select (USD, EUR, GBP, …).
Summary chips typically include total functional amount and total margin (initial + variation).
When the WebSocket client is not connected (and not idle), a yellow banner warns “Live feed offline — showing last known data” — the store may still show the last snapshot.
Row drill-in opens book balance detail; you can spawn a new payment order drawer pre-linked to a book.
Path: /cash/ocp
Open currency position aggregates net exposure by entity and currency with:
- OCP risk alert banner when limits are breached.
- Summary bar and toggle between waterfall chart mode and heatmap mode.
- OCP position grid with export to CSV.
- Same WebSocket offline banner pattern as balances when the feed drops.
Use breach filter and chart mode toggles to focus problem currencies.
Payment orders
Section titled “Payment orders”Path: /cash/payments
Lists payment orders via usePaymentOrders with optional state filtering:
| Filter tab | State |
|---|---|
| All | No filter |
| Pending Approval | PENDING_APPROVAL |
| Pending Settlement | PENDING_SETTLEMENT |
| Settled | SETTLED |
| Rejected | REJECTED |
PaymentOrderGrid drives the main sheet; selecting a row opens PaymentOrderDetail. Admins can authorize or reject through dialogs; New payment order opens a drawer to draft instructions.
WebSocket updates invalidate payment-orders queries when the server broadcasts (see WebSocket).
Analytics
Section titled “Analytics”Path: /cash/analytics
Cash analytics combines a toolbar (preset range, from / to, interval) with four chart cards:
- Cashflow history (
CashflowHistoryChart) - Exposure drift (
ExposureDriftChart) - Funding utilisation (
FundingUtilChart) - Snapshot trend (
SnapshotTrendChart)
Charts load from historical queries (useCashflowHistory, useOcpHistory, useFundingUtilisation, useSnapshotTrend) and share the same date preset plumbing (1M, custom range, EOD interval).
Empty states render when the API returns no rows for the window.
Related: WebSocket integration, REST API.