Balance Provider

A service that provides information about balance of a wallet address

Collects and normalizes token balances and protocol-level data from multiple sources, including EVM APIs and price feeds.


🧠 Why it matters:

In Web3, a user's wallet balance is their most visible asset. We provide fast, accurate, and transparent balance tracking by combining:

  • Live on-chain queries (via EVM and other APIs)

  • Real-time socket updates after every transaction

  • Local caching to improve UX and reduce provider load

  • Price feeds to calculate fiat-equivalent portfolio value

This system ensures users always see their true portfolio state, while also giving investors confidence in how we compute valuations.

The Balances module builds a full portfolio view for users and gives investors confidence in how we calculate holdings and valuations. It combines live blockchain queries with local caching for both performance and transparency.


⚙️ How it works:

  • Single-token balances (ERC20, native assets): Fetched via alchemy_getTokenBalances — fast, stable, and scalable.

  • DeFi positions (LPs, vaults, pools): Retrieved via Enso API — a high-quality source for structured protocol-level asset exposure.

  • Price data: Sourced from CoinGecko, ensuring real-time fiat conversion.

  • Live updates: After each user transaction, to reflect balance changes in real time.

  • Caching layer: Frequently accessed balances are cached locally (IndexedDB) for optimal performance and offline-friendly UX.



🌐 Highlights

  • Accurate, normalized balances across wallets.

  • Real-time updates post-transaction via socket events.

  • Modular data provider logic — easily extendable


Service Name
Balance type
Active

Tokens

Tokens, Pools

Pools

Last updated