Skip to main content
This guide covers how to create wallets, add networks, and manage wallet metadata using the DFNS API and SDK.

Prerequisites

  • Service account or authenticated user with Wallets:Create permission
  • DFNS SDK installed and configured
  • Understanding of wallets and keys

Creating a wallet

Create a wallet on a specific network using the SDK:

Request parameters

Response

The response includes:

Adding a network to an existing wallet

For keys that support multiple networks (e.g., EVM chains), add additional networks to an existing wallet’s key:
Reusing a key requires the Keys:Reuse permission. Pass the key as signingKey.id; a top-level keyId is rejected by the API.
Not all key types support all networks. EVM chains share the same key type (secp256k1), so a single key can be used across Ethereum, Polygon, Arbitrum, etc.

Deriving wallets from a master key (HD)

The recommended pattern is independent keys (the default in Creating a wallet) or shared-key reuse (see Adding a network to an existing wallet). HD derivation is intended for cases where you need BIP-32 path semantics, for example to integrate with systems or tooling that assume hierarchical derivation. Each key share is generated independently by the MPC network, with stronger isolation than HD: compromising one key share reveals nothing about another.
Derive a child wallet from an existing master key by passing signingKey.deriveFrom with a keyId and an optional path. If path is omitted, DFNS auto-generates one.

Path format

The path follows BIP-32 syntax: m/<index>(/<index>)*, with non-negative integer indices (e.g., m/0, m/0/1/2). Hardened paths (with ') are not supported. Each unique path under the same master key derives a distinct wallet with its own address.

Creating wallets with tags

Use tags to organize wallets and target them with policies:

Managing wallet tags

Adding tags

Removing tags

Updating wallet metadata

Update the wallet name:

Listing wallets

List all wallets in your organization:

Filtering by tags

Filter wallets by tags:

Getting wallet details

Get details for a specific wallet:

Getting wallet assets

Retrieve token balances:
See displaying balances for more details on working with balances.

Error handling

Handle common errors:

Webhooks

Subscribe to wallet events:
  • wallet.created - New wallet created
  • wallet.activated - Wallet activated
  • wallet.tags.modified - Wallet tags changed
See webhooks guide for configuration.

Wallets API

Complete API reference

Wallets and keys

Understand the wallet model

Create transfers via API

Send transfers from wallets

Display balances

Query wallet assets
Last modified on July 22, 2026