Simulating institutional token settlement on a permissioned ledger
- ROLE
- Solo build
- TIMEFRAME
- 2025-2026
- STACK
- Hyperledger Fabric, Java, Spring Boot, PostgreSQL, Perspective.js
- LINKS
- github ↗
8
Chaincode rules
13
Unit tests
The problem
Institutional settlement platforms like JPM Coin show why permissioned ledgers matter for banks: deterministic counterparties, instant finality, programmable settlement. I wanted to actually build that shape rather than read about it: a network where two banks and a clearing house can move tokenized deposits and settle atomically.
Approach
A 3-organization Hyperledger Fabric network (BankAlpha, BankBeta, ClearingHouse) on Raft consensus, with a Java chaincode enforcing account creation, mint/burn, transfers, and atomic delivery-versus-payment settlement: the cash and asset legs complete together or not at all. A Spring Boot 3 API talks to the network through the Fabric Gateway, streams live updates over WebSocket, and caches analytics in PostgreSQL fed by chaincode events. A Perspective.js dashboard, FINOS's open-source analytics library and itself a JPMorgan contribution, shows the live transaction feed, balances, and an activity heatmap. This project references the concept of institutional settlement infrastructure like JPM Coin, but is not affiliated with JPMorgan.
Results
8 chaincode rules enforce the settlement logic, backed by 13 unit tests, plus controller tests and PostgreSQL Testcontainers integration coverage. The whole network runs from a single Docker Compose stack: Fabric, Spring Boot, Postgres, and the dashboard.