- Full wallet portfolio in one call: OneBalance’s
aggregated-balancerequires one request per asset (you specifyaggregatedAssetId=ob:usdcetc.). Zerion’s/positions/returns every token a wallet holds in a single call. - More chains, same shape: Zerion covers 60+ EVM chains plus Solana versus OneBalance’s 11. Solana addresses use the same
/wallets/{address}/...paths as EVM, with the same enriched response shape. - Enriched transaction history and DeFi positions: Zerion’s
/transactions/returns decodedoperation_type,transfers[], fees, and dApp metadata. DeFi positions (lending, staking, LPs) are exposed alongside wallet balances viafilter[positions]=only_complex.
Endpoint parity
Wallet portfolio
OneBalance returns the aggregated value of one asset across chains per request. To know a wallet’s total USD value, you callaggregated-balance for each asset and sum the fiatValue. Zerion’s /portfolio endpoint returns the total, 24h change, and breakdowns by chain and position type in one call.
Field mapping
Token balances
OneBalance returns balances grouped by aggregated asset (e.g., “USDC across all chains”). Zerion returns one entry per token per chain via/positions/, with relationships.chain.data.id on each entry. To replicate OneBalance’s per-asset aggregation, group Zerion positions client-side by fungible_info.id and sum value.
Field mapping
Transaction history
OneBalance’sget-tx-history returns transactions performed through the OneBalance system (smart-account operations). Zerion’s /transactions/ returns enriched, decoded wallet history with operation_type, transfers[], fees, and dApp metadata for any address, on every supported chain.
Field mapping
OneBalance’sget-tx-history is scoped to OneBalance-system operations and surfaces quote-level metadata. Zerion’s /transactions/ is a wallet-level, decoded activity feed. The shape differs more than for balances; map at the concept level.
Asset list
OneBalance’s/api/assets/list returns its catalog of aggregated assets (each ob:* ID groups one logical token across chains). Zerion’s /v1/fungibles/ is the equivalent token catalog, with each fungible exposing implementations[] per chain.
Field mapping
Pagination
OneBalance’sget-tx-history accepts offset and limit. Zerion returns a fully-formed links.next URL on every paginated response. Fetch it as-is.
Differences from OneBalance
Most OneBalance data-layer use cases have a direct Zerion equivalent. A few aren’t covered yet, and others behave differently. Worth a scan before you cut over. Not supported today:- Multichain execution (swap, transfer, contract call): OneBalance’s
quote/prepare-call-quote/execute-quoteflow lets you spend an aggregated balance and bridge in one operation. Zerion is data-only. Pair Zerion with Relay for execution. - Smart account management:
predict-address, account deployment, and signing flows have no Zerion equivalent. Pair with Privy or Turnkey for embedded wallets and key management. - Resource locks / EIP-7702 helpers: OneBalance-specific primitives for spending aggregated balances. No Zerion equivalent; tied to OneBalance’s execution layer.
- Authentication: OneBalance uses an
x-api-keyheader. Zerion uses HTTP Basic Auth. Get a key at dashboard.zerion.io. - Chain coverage: OneBalance supports 11 chains. Zerion supports 60+ EVM chains and Solana, with NFTs on EVM. See the full list.
- Address format: OneBalance accepts CAIP-style accounts (
eip155:1:0x…,solana:5eyk…:…). Zerion takes plain0x…EVM or base58 Solana addresses on the same/wallets/{address}/…path. - Aggregation model: OneBalance groups balances by
aggregatedAssetId(one entry per logical token); per-chain detail is nested inindividualAssetBalances. Zerion returns one entry per token per chain; group client-side byfungible_info.idif you need OneBalance-style aggregation. - Pagination: OneBalance uses
offset+limit. Zerion returnslinks.nextas a fully-formed URL you can fetch as-is. See pagination. - Response shape: Zerion uses JSON:API. Payloads live under
data[].attributeswith related entities underdata[].relationships. - DeFi positions: Zerion exposes lending, staking, and LP positions via
filter[positions]=only_complexon the same/positions/endpoint. OneBalance does not surface DeFi positions in its data API. - Realtime updates: OneBalance offers polling (
get-quote-status). Zerion offers transaction webhooks for push notifications on wallet activity.