Staking Dashboard for a Singapore Staking Provider
Designed and built a clickable client dashboard for a Singapore staking provider serving funds, family offices and corporate treasuries: positions across six chains, daily rewards split by type with SGD and USD values at receipt, unbonding dates per chain, and an approvals inbox that applies each institution's policy before stake moves.
Most of our work is under NDA. Per agreement, we can share the work but not the company details - all names and identifying information shown here have been changed.
Overview, positions, position detail with 5 tabs, rewards and approvals, plus a stake request panel from the top bar. The validator quick view and reward day breakdown open as side panels.
Ethereum, Solana, Cosmos Hub, Osmosis, Celestia and Polkadot, each with its reward model (withdrawal sweep, auto-credit or claim required) and its unbonding rule, from the Ethereum exit queue to a 21-day Cosmos unbond.
Every request shows the policy rule it falls under and approvals so far. Approve asks for a passkey step, reject needs a reason, and an initiator cannot approve their own request.
30 days of reward events across 15 positions and 4 sub-accounts, each with gross, commission, net, price at receipt and its source, plus 12 approval requests in every state.
Kallang Vale's clients received a monthly PDF and a rewards spreadsheet assembled by hand from block explorers, node logs and a pricing feed. Fund administrators could not separate consensus rewards from execution and MEV, could not match totals to on-chain data and had to email to ask when a Cosmos unbond would land. Month-end statements took four people six working days, and two clients found reconciliation differences before Kallang Vale did.
Bollard gives each institution one dashboard for its stake: what is staked on which validators, what it earned each day in native tokens with SGD and USD values, when unbonding stake becomes withdrawable, and which requests are waiting for approval under the institution's own policy. Every page respects the sub-account filter, and rewards download as a CSV ready for fund accounting.
Kallang Vale runs validators for institutional and accredited clients only, under Singapore digital token regulation, and every chain it supports pays rewards and releases stake in a different way.
Ethereum pays through withdrawal sweeps and exits through a queue whose length changes with demand. Solana activates and deactivates at epoch boundaries, Cosmos chains accrue rewards that must be claimed and unbond in 21 days, and Polkadot nominators unbond in about 2 days. None of this can be hard-coded.
A fund administrator needs each reward split into consensus, execution and MEV, net of commission, with the fair value at the time it was received in SGD and USD. Days still in an open reward run have to be marked provisional until they are reconciled to on-chain data.
MAS consumer protection measures generally restrict staking for retail customers, so only institutional and accredited investors are onboarded. Staking has to be blocked when a client's investor status evidence lapses, and KYB, screening and travel-rule records must be in place before stake or withdrawals move.
Institutions set their own approval policies, such as 2 of 3 approvers above a value threshold, and approvers often act away from their desk. Withdrawals may go only to whitelisted addresses, and new addresses have a 24-hour cooling-off under Kallang Vale's policy.
Mapped 12 roles across client users and Kallang Vale staff, 44 screens (17 client dashboard and 27 ops console) and the data model for positions, validators, reward events and runs, unbonding requests, approval policies and withdrawal addresses. Wrote down the rules the design follows: the Payment Services Act 2019, the DTSP regime under FSMA 2022, SFA investor classes, MAS Notice PSN02 and the travel rule, MAS Technology Risk Management Guidelines, the PDPA, EIP-3076 slashing protection and per-chain protocol parameters.
Built 5 key client screens on a production web3 dashboard kit: the overview with KPI sparklines, rewards by day stacked by type or chain and a needs-your-action list, positions with filters and an unstake request, position detail with validators, rewards, movements and documents, rewards with SGD and USD values and a working CSV download, and the approvals inbox with passkey approve and reject with reason. All actions run on local state.
Integration with validator clients, remote signers and HSMs, Rated Network and beaconcha.in benchmarks, archive nodes for reconciliation, Kaiko or CoinGecko prices with MAS exchange rates, custodians such as Fireblocks, BitGo and Copper, Sumsub KYB, Chainalysis KYT and Notabene. Client SSO through Okta or Entra ID, a full audit log, the remaining client screens and the 27-screen ops console for fleet health, incidents, reward runs and commission.
Every amount shows the native token first and its SGD or USD value underneath, valued at the daily 00:00 UTC fixing with the price source named. Native totals per chain sit next to the reporting-currency chart, so nothing hides behind a conversion.
Rewards stack into consensus, execution and MEV, each reward event shows gross, commission, net and the reward run it belongs to, and the current open run is labelled provisional until reconciled.
Each position shows its next reward event, from the next Ethereum withdrawal sweep to the next Solana epoch boundary or continuous Cosmos accrual. Unstake requests state the unbonding period, that no rewards are earned meanwhile and when funds become withdrawable.
A banner warns when the institution's investor status evidence expires and that new stake is blocked after that date. Each request card carries its policy rule, approval progress, expiry and risk notes such as destination address age and screening result.

Designed and built a clickable tokenisation platform for a Vaduz token issuer registered under the TVTG: permissioned tokens for fund units, real estate SPV shares and private credit notes, with every on-chain operation approved under a signing policy, every investor transfer checked before it settles, and the token ledger kept in step with the legal register.

Unified supply, borrow, swap, vault staking and portfolio analytics into a single multi-chain console - shipped from clickable AI prototype to production in 8 weeks.
Enterprise Software Engineering - Human + AI
Contact Us
© 2026 - Copyright. All Rights reserved Oceanlab
Location
Global Headquarters
21 Merchant Road, 3rd Floor, Singapore 058267
Main corporate office and leadership operations
North America Office
548 Market Street, PMB 12345, San Francisco, CA 94104
Client operations and business development
India Office
402 Shivalik Shilp II, SG Highway, Ahmedabad 380015
Engineering and delivery center
Enterprise Software Engineering - Human + AI
Contact Us
Locations
Global Headquarters
21 Merchant Road, 3rd Floor, Singapore 058267
Main corporate office and leadership operations
North America Office
548 Market Street, PMB 12345, San Francisco, CA 94104
Client operations and business development
India Office
402 Shivalik Shilp II, SG Highway, Ahmedabad 380015
Engineering and delivery center
© 2026 - Copyright. All Rights reserved Oceanlab