Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.prudra.dev/llms.txt

Use this file to discover all available pages before exploring further.

Derive child addresses

Child addresses are unique EVM addresses derived from a managed master wallet using BIP-44 hierarchical deterministic derivation. Each derivation call produces a new address with its own BIP-44 path index. Child addresses are unlimited on all plans. Use child addresses to issue unique deposit addresses to customers, separate payment flows by product, or isolate funds by use case.
Dashboard support for child address management is coming soon. Use the SDK or cURL to derive and list child addresses.

Parameters

ParameterTypeRequiredDescription
masterWalletIdstringYesThe ID of the master wallet to derive from.
namestringNoHuman-readable label. Useful for identifying the customer or use case in the dashboard.
metadataobjectNoArbitrary JSON metadata. Store your own IDs here (e.g. customerId, orderId).

Response fields

FieldTypeDescription
idstringChild address ID. Prefix: caddr_.
masterWalletIdstringThe parent master wallet.
addressstringThe EVM address. Share this as the deposit address.
derivationPathstringThe BIP-44 path (e.g. m/44'/60'/0'/0/3). Deterministic — the same index always yields the same address.
namestringThe name you provided, or null.
metadataobjectThe metadata object you provided, or {}.
createdAtstringISO timestamp.

Use child addresses in transfers

To send funds from a child address, use fromWalletType: 'child':
import { transfer } from '@prudra/wallet';
import { Chain, Token } from '@prudra/core';

const result = await transfer({
  fromWalletId:   'caddr_clx1def456',
  fromWalletType: 'child',          // ← child address
  fromToken:      Token.USDC,
  toAddress:      '0xRecipient...',
  toChain:        Chain.BASE,
  toToken:        Token.USDC,
  amount:         '5.00',
});

Derivation uniqueness

Each deriveChildAddress() call increments the BIP-44 address index. Addresses are guaranteed unique across all calls within the same master wallet. The derivation is deterministic — if you call deriveChildAddress() with the same master wallet, you get a new unique address each time (not the same one). Child address at index n is always m/44'/coin_type'/0'/0/n. The address is the same regardless of when you derive it — useful for key recovery scenarios.

Plan limits

Child addresses are unlimited on all plans (Hobby, Pro, Enterprise). There is no per-plan limit on how many child addresses you can derive.

Next steps