solutions / fd treasury & bank etl

Financial systems · AAC

Every deposit, every bank, every maturity - one registry.

An FD treasury for multi-bank operations - lifecycle tabs from creation to maturity, a bank master with per-branch defaults, and import pipelines that never lose a row.

In production at AAC
ClientAAC
DomainTreasury operations
BuildFD registry + import pipelines
StackNode.js · React · MUI
DataPostgreSQL · Excel ETL + snapshots

Where this started

Fixed deposits are the quiet side of a financial business - money parked across half a dozen banks, each with its own receipts, rates and maturity dates, usually tracked in whichever spreadsheet the last accountant left behind. Missing a maturity date costs real interest. The treasury module makes the whole estate visible and keeps it that way.

Decision 01

The lifecycle lives in the tabs.

The registry is organised the way a treasury desk thinks: deposits pending update, pending release, pending renewal, renewed, yet to mature, matured, live - each tab carrying its count, lighting up when something needs attention. Nothing matures silently.

FD registry - lifecycle tabs with counts, every deposit and maturity

Decision 02

Banks are a master, not a memory.

Every bank carries its code, branch, IFSC, MICR and account numbers, with a default bank per business branch. New deposits inherit clean bank data instead of retyped approximations.

Bank master - IFSC, MICR, accounts, per-branch defaults

Decision 03

Imports that respect live data.

The estate began in legacy Excel - an ETL pipeline brought it in, validated and typed. But once users add deposits in the app, a naive re-import would destroy their work, so the pipeline snapshots live data and re-imports against it. Migrations are repeatable without ever losing a row.

Imports & snapshots - legacy Excel merged with live entries, safely

The result

The FD estate now has one source of truth: every receipt registered, every maturity visible before it arrives, every bank's details clean enough to transact on. Built as a module of the AAC platform and proven there - designed to stand alone for any operation with money parked across banks.

No silent maturities

Lifecycle tabs with live counts - pending renewals and maturities announce themselves.

Clean bank data, always

IFSC, MICR, accounts and per-branch defaults in one master, inherited by every deposit.

Migrations without loss

Snapshot-aware ETL merges legacy Excel with live entries - re-runs are safe by design.

Under the hoodNode.js · React · MUI · PostgreSQL

Bring us the problem