> ## Documentation Index
> Fetch the complete documentation index at: https://www.dynamic.xyz/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Wallet Book

> Look up wallet names, keys, branding, and connection metadata from Dynamic's wallet registry.

Wallet Book is Dynamic's registry of supported wallets. Each entry maps a wallet key to its display name, brand assets, supported chains, and connection metadata. Use it when you need wallet metadata outside the SDK, such as rendering a custom wallet list or enriching records on your backend.

## The registry file

The full registry is published as a single public JSON document; no API token is required:

```bash curl theme={"system"}
curl "https://dynamic-static-assets.com/wallet-book/v1/latest/wallet-book.json"
```

The document has three top-level sections:

| Section    | Contents                                                                  |
| ---------- | ------------------------------------------------------------------------- |
| `wallets`  | One entry per wallet key, with chains, brand, and connection metadata.    |
| `groups`   | Display metadata for wallet groups such as a brand shared across wallets. |
| `priority` | Wallet ordering used by Dynamic surfaces.                                 |

An entry in `wallets` is keyed by the wallet key and looks like this:

```json theme={"system"}
{
  "wallets": {
    "argentx": {
      "brand": {
        "alt": "Argent X Wallet",
        "primaryColor": "#FF875B",
        "spriteId": "argentx"
      },
      "desktop": {
        "chromeId": "dlcobpjiigpikoobohmabehhmhfoodbb",
        "edgeId": "ajcicjlkibolbeaaagejfhnofogocgcj",
        "firefoxId": "argent-x"
      },
      "name": "Ready X",
      "shortName": "Ready X"
    }
  }
}
```

The object key (`"argentx"`) is the wallet key the SDK returns in `walletOptions[].key`. Chain identifiers use CAIP-2 format such as `eip155:1` and `solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp`.

## Cache and refresh

The registry serves `ETag` and `Last-Modified` headers with a `Cache-Control` of `public, max-age=600`. Send the saved `ETag` in `If-None-Match` to get a `304 Not Modified` when the file has not changed, and cache it for up to ten minutes between polls.

## The JavaScript package

The `@dynamic-labs/wallet-book` package exports the same data with typed accessors and a `WalletIcon` component for rendering wallet icons by key:

```tsx React theme={"system"}
import { WalletIcon } from '@dynamic-labs/wallet-book'

const WalletIconComponent = () => {
  return <WalletIcon walletKey="metamask" />
}
```

For fetching wallet keys from the SDK rather than the registry, see [Fetch and display wallets](/docs/react/wallets/using-wallets/general/fetch-display-wallets) (React) or [Getting available wallets to connect](/docs/javascript/reference/wallets/get-available-wallets-to-connect) (JavaScript).
