Building a Pure Small Savings Bank in Public.
Engineering notes, architectural trade-offs, and progress logs as we build
The Monsoon Bank: a strictly retail small-savings bank ($1,000/mo KYCed exchange inflow cap, unrestricted outgoing spending) powered by ring-fenced 14%–16% APR proprietary trading margin facilities.
End-to-End System Blueprint
How our off-chain TypeScript monorepo orchestrates the 5 on-chain Solana Anchor programs and institutional prime brokerage sub-accounts.
Asymmetric 2-of-2 Transit Wallet
Every saver gets a deterministic Solana PDA co-owned by Key 1 (User WebAuthn Passkey) and Key 2 (Bank HSM Policy Daemon).
- Strict Inflow: Only accepts transfers from the customer's verified KYCed exchange up to a hard
$1,000/monthSmall Savings cap. - Unrestricted Outflow: Customers can send or spend interest and principal to any wallet, card, or merchant with zero SOL gas fees (screened in
<50msagainst OFAC blacklists).
TypeScript BIGINT Double-Entry Ledger
Built on Node.js 22 LTS + TypeScript + PostgreSQL 16 (Drizzle ORM) with SERIALIZABLE transaction isolation.
- Zero Floating-Point Math: All balances use 6-decimal atomic
bigintunits (1_000_000n = $1.00). - Daily Midnight Snapshot: Calculates daily interest accrual and executes batched top-level SPL payouts on the 1st of every month.
14%–16% Prop Margin Sub-Accounts
Fixed-rate institutional margin facilities deployed inside ring-fenced sub-accounts (Binance Institutional, Coinbase Prime, OKX, Copper ClearLoop).
- Zero Borrower Withdrawal Custody: Borrowers receive trade-only API keys on whitelisted liquid pairs (
BTC,ETH,SOL). - 20%–30% First-Loss Equity: Prop firm posts 20–30% cash margin first.
- 115% / 110% / 105% Auto-Liquidation: 250ms WebSocket loop revokes API keys and closes positions at
105%principal coverage.
Net Interest Margin & "Yield-as-CAC" Sandbox
Test how The Monsoon Bank generates a 3%–4% net profit spread while paying early small savers up to 8.85% APY (SBI MCLR parity)—and remains cash-flow positive even if prop borrowing drops in a bear market.
At $1,000/mo max deposit, $100M AUM represents ~20,000–40,000 granular retail savers with zero whale bank-run concentration risk.