RecipesWallets
Single Signature Wallet (Bitcoin/Liquid)
SingleSig wallets use a single key for transaction signing, suitable for simpler use cases.
Characteristics
- Networks: Bitcoin or Liquid
- Security: Single key (no multisig)
Creating a SingleSig Wallet
// Step 1: Create signer
const signerResult = await broadcastRequest({
action: 'add',
resource: '/signers',
details: {
sid: uuidv4(),
name: `singlesig_signer_${Date.now()}`,
location: 'hosted',
},
})
const signerId = signerResult.details.sid
// Step 2: Derive XPUB
const xpubResult = await broadcastRequest({
action: 'add',
resource: `/signers/${signerId}/xpubs`,
details: {
id: uuidv4(),
change: 'receive',
},
})
// Step 3: Create SingleSig wallet
const walletResult = await broadcastRequest({
action: 'add',
resource: '/wallets',
details: {
id: uuidv4(),
name: `singlesig_wallet_${Date.now()}`,
type: 'single_sig',
network: 'bitcoin', // or 'liquid'
value: {
signer_id: signerId,
},
},
})
const walletId = walletResult.details.wid
// Step 4: Generate receive address
const addressResult = await broadcastRequest({
action: 'add',
resource: `/wallets/${walletId}/addresses`,
details: {
type: 'receive',
index: 1,
},
})
const address = addressResult.details.address