Blockstream Enterprise
RecipesWallets

Wallet Onboarding Workflow

This guide describes the workflow for creating and configuring wallets in the Custody Engine system. It covers the different wallet types, signer setup, and asset management.

Overview

Wallet creation in the Custody Engine follows a structured process that separates key management from wallet configuration. This separation provides several advantages:

Why Separate Signers from Wallets?

The Custody Engine uses a signer-wallet architecture where cryptographic keys (signers) are managed independently from the wallets that use them.

┌─────────────┐      ┌─────────────┐      ┌─────────────┐
│  Signer A   │──────│  Wallet 1   │      │  Wallet 3   │
└─────────────┘      └─────────────┘      └─────────────┘
                            │                    │
┌─────────────┐      ┌─────────────┐            │
│  Signer B   │──────│  Wallet 2   │────────────┘
└─────────────┘      └─────────────┘

┌─────────────┐            │
│  Signer C   │────────────┘
└─────────────┘

Benefits:

  • Reusability: One signer can be used across multiple wallets
  • Flexibility: Multisig wallets can combine signers from different sources
  • Security isolation: Key management is centralized and auditable
  • Key rotation: Signers can be replaced without recreating wallets (in supported configurations)

The Wallet Creation Process

  1. Create a Signer - The cryptographic key manager
  2. Derive XPUB - Generate extended public key for address derivation
  3. Create Wallet - Configure the wallet with desired type and network
  4. Generate Addresses - Create receive/change addresses

Wallet Creation Flow Diagram

Step 1: Signer Creation Step 2: XPUB Derivation Step 3: Wallet Creation Step 4: Address Generation hosted external amp single_sig kofn_multisig Generate Signer ID POST /signers Location Server manages keys External key management (WIP) POST /signers/:id/xpubs BIP-87 Derivation keyorigin_xpub returned POST /wallets Wallet Type Liquid Network2-of-2 MultisigConfidential TX Bitcoin/LiquidSingle Key Bitcoin/LiquidK-of-N Threshold POST /wallets/:id/addresses Receive/Change Address

On this page