@exodus/wallet-accounts | Exodus Docs - docs.exodus.com

A concise developer-facing presentation that explains the purpose, installation, usage, and best practices for the @exodus/wallet-accounts feature (also known to end users as "portfolios").

Overview

@exodus/wallet-accounts is a feature in the Exodus SDK that provides a clean, CRUD-style interface to manage wallet accounts and portfolios. It lets developers create, read, update, and delete logical account groupings while the underlying wallet manages the cryptographic seeds and addresses. From an end-user perspective these collections often appear as separate "portfolios" inside the Exodus UI.

Why use wallet-accounts?

This module is designed to separate account metadata and presentation from low-level wallet keys, so teams can build multi-portfolio workflows, per-user account views, or sandboxed portfolios for testing. Use cases include user profiles, sub-accounts, custodial tooling, demo/test accounts, or multi-portfolio reporting.

Key benefits

Quick facts

Installable as an npm package and intended for both single-process and multi-process environments (examples: web apps, extensions, Electron, or React Native).

Installation & Setup

yarn add @exodus/wallet-accounts
# or
npm install @exodus/wallet-accounts

After installation, pair @exodus/wallet-accounts with the headless SDK piece (@exodus/headless) to access wallet internals while keeping UI logic separate.

Basic usage example

import { createWalletAccounts } from '@exodus/wallet-accounts'
// pseudo-code
const accounts = createWalletAccounts({ backend })
await accounts.create({name: 'Savings', metadata:{currency:'USD'}})
const list = await accounts.list()

Recommended initialization

Initialize accounts after wallet boot and seed derivation. Keep account metadata stateless where possible and rehydrate from the authoritative store when the app restarts.

Security & Best Practices

Wallet accounts handle metadata only. Sensitive secrets (mnemonics, private keys) must remain in the wallet core or a secure enclave. Never serialize secrets into account metadata. Use role-based access when exposing account-management endpoints from a backend; prefer read-only views for analytics consumers.

Backup and recovery

Because account objects are metadata layers, recovery of funds always depends on restoring the wallet seed or device. Ensure users understand that exporting account metadata does not replace the 12-word secret recovery phrase or hardware wallet backups.

Multi-portfolio tips

If your product requires multiple portfolios for one user, map portfolios to stable identifiers and avoid renaming identifiers that downstream services depend on.

Developer patterns & examples

Common patterns include:

  1. Profile separation: give each app profile a portfolio for bookkeeping.
  2. Staging accounts: create ephemeral portfolios for testing and tear them down afterwards.
  3. Analytics-ready views: attach lightweight metadata to accounts for CSV exports and reporting.

API considerations

Design idempotent create/update endpoints, rate-limit write operations, and validate metadata on the client to reduce round-trips.

Resources & Links

Official documentation and support pages are the best source for up-to-date details, examples, and security notes.

Colorful note: this presentation uses a bright accent and soft gradient backgrounds to keep slides readable and modern.