Skip to content

FX rate lock & conversion

ID MOD-025
System SD04
Repo bank-payments
Build status Deployed
Deployed Yes
Last commit 178e49975435ec5926a3b4f612f5d9ee9efc8495

Locks a customer rate for 30–60 seconds. On confirmation, posts both legs atomically through the FX nostro. See ADR-015.


Module dependencies

Depends on

Module Title Required? Contract Reason
MOD-004 Multi-currency ledger (NZD/AUD) Required Posts FX conversion entries through the multi-currency ledger to maintain accurate per-currency balances.
MOD-085 Market rates ingestion & normalisation Required Requires live FX spot rates from the market rates ingestion module to price and lock conversions.
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-144 Confirmation of payee — account name verification Hard dependency
MOD-145 Payment hold & friction engine Hard dependency

Policies satisfied

Policy Title Mode How
PAY-004 Cross-Border Payments & FX Policy LOG FX rate applied to each conversion is locked and recorded — no post-hoc rate adjustment possible
CON-005 Fee & Pricing Transparency Policy GATE Spread disclosed to customer before confirmation — system enforces pre-disclosure not post-disclosure
CLQ-004 Interest Rate Risk in the Banking Book (IRRBB) Policy CALC FX position updated on each conversion — IRRBB and FX risk exposure current at all times

Capabilities satisfied

Capability Title Mode How
CAP-003 Multi-currency wallet (USD, EUR, GBP, SGD, JPY) AUTO Converts between wallet currencies at live rates, maintaining accurate sub-balances per currency in the multi-currency wallet.
CAP-006 Foreign exchange — live rates, rate lock AUTO Locks the exchange rate for up to 24 hours so the customer knows the exact settlement amount before confirming.
CAP-043 Transparent FX markup display AUTO Exposes the FX margin applied to each conversion so customers can see the full cost before accepting a rate.

Part of SD04 — Payments Processing Platform Compiled 2026-05-22 from source/entities/modules/MOD-025.yaml