Configuration
Configuration options and settings for @tetherto/wdk-wallet-evm-erc-4337
Wallet Configuration
The WalletManagerEvmErc4337 requires a complete ERC-4337 configuration object with all required parameters:
import WalletManagerEvmErc4337 from '@tetherto/wdk-wallet-evm-erc-4337'
const config = {
// Required parameters
chainId: 1,
blockchain: 'ethereum',
provider: 'https://rpc.mevblocker.io/fast',
safeModulesVersion: '0.3.0', // optional as it defaults to '0.3.0', only '0.2.0' and '0.3.0' are valid
entryPointAddress: '0x0000000071727De22E5E9d8BAf0edAc6f37da032',
bundlerUrl: `https://api.pimlico.io/v1/ethereum/rpc?apikey=${PIMLICO_API_KEY}`,
paymasterUrl: `https://api.pimlico.io/v2/ethereum/rpc?apikey=${PIMLICO_API_KEY}`,
paymasterAddress: '0x777777777777AeC03fd955926DbF81597e66834C',
transferMaxFee: 100000000000000,
paymasterToken: {
address: '0xdAC17F958D2ee523a2206206994597C13D831ec7'
}
}
const wallet = new WalletManagerEvmErc4337(seedPhrase, config)Account Configuration
Both WalletAccountEvmErc4337 and WalletAccountReadOnlyEvmErc4337 use the same configuration structure:
Configuration Options
Chain ID
The chainId option specifies the blockchain network ID. Required for fee estimation and Safe4337Pack initialization.
Type: number
Required: Yes
Examples:
Provider
The provider option specifies the RPC endpoint or EIP-1193 provider instance for blockchain interactions. Required for all operations.
Type: string | Eip1193Provider
Required: Yes
Examples:
Bundler URL
The bundlerUrl option specifies the URL of the ERC-4337 bundler service that handles UserOperation bundling and submission to the mempool. Required for transaction processing.
Type: string
Required: Yes
Example:
Paymaster URL
The paymasterUrl option specifies the URL of the paymaster service that sponsors transaction fees using ERC-20 tokens. Required for gasless transactions.
Type: string
Required: Yes
Example:
Paymaster Address
The paymasterAddress option specifies the address of the paymaster smart contract. Required for paymaster integration.
Type: string
Required: Yes
Example:
Entry Point Address
The entryPointAddress option specifies the address of the ERC-4337 EntryPoint smart contract. Required for UserOperation processing.
Type: string
Required: Yes
Standard EntryPoint v0.7:
Safe Modules Version
The safeModulesVersion option specifies the Safe modules version for smart contract wallet implementation. Required for Safe4337Pack initialization.
Type: string
Required: Yes
Example:
Paymaster Token
The paymasterToken option specifies the ERC-20 token used for paying transaction fees through the paymaster. Required for fee calculations and payments.
Type: object
Required: Yes
Properties:
address(string): The ERC-20 token contract address
Example:
Transfer Max Fee
The transferMaxFee option sets the maximum fee amount in paymaster token units for transfer operations. This prevents transactions with unexpectedly high fees. Optional parameter.
Type: number
Required: No (optional)
Unit: Paymaster token base units
Example:
Network-Specific Configurations
Ethereum Mainnet
Polygon Mainnet
Arbitrum One
Avalanche C-Chain
Plasma
Sepolia Testnet (USD₮ ERC-20 mock/testnet only)
Important Ethereum Sepolia is a testnet. The USD₮ tokens available at the links below are not real and do not entitle the holder to anything. In particular, they cannot be redeemed with Tether International, S.A. de C.V. ("Tether International") and are not Tether Tokens as described in Tether International's Terms of Service. The USD₮ tokens available at the links below on this testnet are intended for testing WDK on Ethereum Sepolia. The links below are links to third-party websites and are Third-Party Information as described in Tether Operations, S.A. de C.V.'s Website Terms
USD₮ on Sepolia contract: 0xd077a400968890eacc75cdc901f0356c943e4fdb
Get test USD₮:

