Skip to main content

Function Signature

Description

Creates a new SVM wallet account with the specified threshold signature scheme. Returns a walletMetadata object alongside the sensitive externalServerKeyShares. Persist bothwalletMetadata in your cache and externalServerKeyShares in a secrets vault. The SDK is stateless and you must pass walletMetadata to every subsequent operation.

Parameters

Required Parameters

  • thresholdSignatureScheme (ThresholdSignatureScheme) - The threshold signature scheme for the wallet

Optional Parameters

  • password (string) - Password to protect the wallet’s key shares. Required when backUpToDynamic is true.
  • onError ((error: Error) => void) - Error callback function for handling creation errors
  • backUpToDynamic (boolean) - Whether to back up the first key share to Dynamic (defaults to false). When true, a password must be provided.

Returns

  • Promise<object> - Object containing wallet information:
    • walletMetadata (WalletMetadata) - Non-sensitive identity + backup-pointer metadata. The wallet’s address is at walletMetadata.accountAddress. Persist this in your cache.
    • rawPublicKey - Raw public key
    • externalServerKeyShares (ServerKeyShare[]) - Sensitive plaintext shares for MPC operations. Store these in a secrets vault.
    • externalKeySharesWithBackupStatus - Array of key shares with their backup status. Each entry contains:
      • share - The key share (ServerKeyShare)
      • backedUpToClientKeyShareService - Whether this share was backed up to Dynamic’s client share service

Example

Last modified on May 21, 2026