WDK logoWDK documentation
EVM

Standard EVM wallet

Create and manage EVM wallets for native transfers, ERC-20 balances, token transfers, and signing.

Use the EVM wallet module for standard Ethereum-compatible accounts where users pay gas with the chain native token.

These pages reflect @tetherto/wdk-wallet-evm@1.0.0-beta.22. See the signer migration for constructor, derivation, and ownership changes. Transactions with type 3 or blob fields are rejected with ValueError.

Do not pass a beta.19 through beta.22 manager-derived account to Velora beta.8 and beta.9, USD₮0 bridge beta.10 and beta.11, or Aave beta.7 when its shared ethers provider lacks EIP-1193 request(). Each protocol treats every non-string provider as EIP-1193 and rejects the ethers Provider shared by the manager. For these exact releases, construct WalletAccountEvm directly with the original RPC URL or genuine EIP-1193 provider. Never mutate its internal provider field. Direct accounts are outside WDK Core's policy and middleware decoration, so retain required application checks and account-level controls. See the direct setup for Velora, the bridge, or Aave.

Features

  • BIP-39 Seed Phrase Support: Generate and validate BIP-39 mnemonic seed phrases
  • EVM Derivation Paths: Support for BIP-44 standard derivation paths for Ethereum (m/44'/60')
  • Multi-Account Management: Create and manage multiple accounts from a single seed phrase
  • EVM Address Support: Generate and manage Ethereum-compatible addresses using ethers.js
  • Message Signing: Sign and verify messages using EVM cryptography
  • Offline Transaction Signing: Sign EVM transactions with signTransaction() without broadcasting them
  • Signer Abstraction: Use seed-backed or private-key-backed signers from @tetherto/wdk-wallet-evm/signers, including named signer account retrieval.
  • Transaction Management: Send transactions and get fee estimates with EIP-1559 support
  • Normalized Transaction Status: Read pending, confirmed, final, and replaced transaction states, or wait for a target finality level
  • Contract Deployment Transactions: Send or sign contract-creation transactions by omitting to or passing to: null.
  • ERC20 Support: Query native token and ERC20 token balances using smart contract interactions
  • Batch Token Balance Queries: Fetch balances for multiple ERC20 tokens in one call with getTokenBalances
  • Provider Configuration: Configure a URL, an EIP-1193 provider, an ordered failover list, or an existing ethers Provider. The manager reuses one provider across its accounts. The published configuration type includes ethers providers.
  • Memory Safety: Secure private key management with memory-safe HDNodeWallet implementation
  • Gas Optimization: Support for EIP-1559 maxFeePerGas and maxPriorityFeePerGas
  • Fee Estimation: Dynamic fee calculation with normal (1.1x) and fast (2.0x) multipliers

Supported Networks

This package works with any EVM-compatible blockchain, including:

  • Ethereum: Mainnet, Sepolia
  • Polygon: Mainnet, Amoy
  • Binance Smart Chain (BSC): Mainnet, Testnet
  • Arbitrum: One, Nova
  • Optimism: Mainnet, Sepolia
  • Avalanche C-Chain: Mainnet, Fuji
  • And many more...

Next Steps


Need Help?

On this page