Prerequisites
- Service account or authenticated user with
Wallets:Createpermission - 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
| Parameter | Required | Description |
|---|---|---|
network | Yes | The blockchain network (see supported networks) |
name | No | Human-readable name for the wallet |
tags | No | Array of tags for organization |
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.
signingKey.deriveFrom with a keyId and an optional path. If path is omitted, DFNS auto-generates one.
Path format
Thepath 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:Error handling
Handle common errors:Webhooks
Subscribe to wallet events:wallet.created- New wallet createdwallet.activated- Wallet activatedwallet.tags.modified- Wallet tags changed
Related documentation
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