Nostro & FX treasury management¶
| ID | MOD-082 |
| System | SD04 |
| Repo | bank-payments |
| Build status | Deployed |
| Deployed | Yes |
| Last commit | ba79a3857b3dbbed3993a5ded9523c95f3d51e16 |
The nostro and FX treasury management module maintains the bank's correspondent banking positions and manages intraday funding flows across all currency corridors.
Purpose¶
Cross-border and FX payments require the bank to hold pre-funded balances ("nostro accounts") at correspondent banks in each settlement currency. If a nostro account is underfunded, outward payments in that currency cannot settle. If it is overfunded, the bank holds excess liquidity earning below-market returns. This module manages both risks.
Nostro accounts¶
The bank holds nostro accounts at correspondent banks for each active currency corridor. Each account has a configured minimum balance (the funding floor) and a target balance. The module monitors the intraday balance of each nostro account in real time via the correspondent bank's balance reporting API or MT940/camt.052 message feeds.
What it does¶
- Real-time balance monitoring — receives intraday balance messages from each correspondent and maintains a live nostro position in Postgres
- Automatic funding triggers — when a nostro balance falls within the funding alert threshold (configurable per currency), the module raises a funding instruction to the treasury team via the operations work queue (MOD-064) and optionally executes an automated funding transfer if the treasury has pre-authorised auto-funding for that corridor
- Payment gating — when a nostro balance is below the minimum required to fund a queued outward payment, the payment is held in MOD-020 (Pre-payment validation) until the nostro is funded or the treasury manually releases the hold
- Position dashboard — provides the treasury team with a real-time view of all nostro positions, intraday settlement flows, and projected close-of-day positions across all corridors
- Integration with reconciliation — feeds intraday nostro movements to MOD-081 (Payment reconciliation engine) for matching against outward payment settlements
Relationship to customer FX¶
Customer-facing FX conversion (rate lock, spread, conversion execution) is handled by MOD-025 (FX rate lock & conversion). This module operates at the bank's treasury level — it is invisible to customers but is the funding mechanism that makes customer FX payments possible.
Module dependencies¶
Depends on¶
| Module | Title | Required? | Contract | Reason |
|---|---|---|---|---|
| MOD-004 | Multi-currency ledger (NZD/AUD) | Required | — | Nostro balances are maintained in the multi-currency ledger — this module reads and updates currency-split positions. |
| MOD-085 | Market rates ingestion & normalisation | Required | — | FX rate data from market rates ingestion is required for nostro position valuation and cross-currency funding decisions. |
| MOD-003 | Real-time balance engine | Required | — | Real-time nostro balance visibility requires the live balance engine for accurate intraday positions. |
| MOD-104 | AWS shared infrastructure bootstrap | Required | — | AWS shared infrastructure provisioned by MOD-104 (EventBridge buses, S3, KMS, Kinesis, Cognito) is required before this module can be deployed. |
| MOD-103 | Neon database platform bootstrap | Required | — | Neon database and schema provisioned by MOD-103 must exist before this module can read or write Postgres. |
Required by¶
| Module | Title | As | Contract |
|---|---|---|---|
| MOD-154 | Correspondent banking risk gate | Hard dependency | — |
Policies satisfied¶
| Policy | Title | Mode | How |
|---|---|---|---|
| CLQ-002 | Liquidity Risk Management Policy | CALC |
Nostro balances at correspondent banks are included in the liquidity position calculation — LCR and NSFR capture all accessible liquidity pools. |
| PAY-002 | Settlement Risk Policy | GATE |
Outward cross-border payments are blocked if the correspondent nostro account balance is insufficient to fund settlement — overdraft of nostro positions is not permitted. |
| PAY-008 | Payment Routing, Sponsor & Card-Scheme Abstraction Policy | AUTO |
Nostro account positions are reconciled against correspondent bank statements on every settlement cycle — discrepancies are flagged automatically for treasury review. |
Capabilities satisfied¶
| Capability | Title | Mode | How |
|---|---|---|---|
| CAP-129 | Internal FX nostro management | AUTO |
Maintains real-time nostro account balances across all correspondent bank relationships, triggers funding transfers when balances fall below configured thresholds, and provides a treasury dashboard for intraday position management. |
Part of SD04 — Payments Processing Platform
Compiled 2026-05-22 from source/entities/modules/MOD-082.yaml