Tomo Docs
Tomo Docs
  • Overview
    • Introducing Tomo
    • Tomo's Key Management
  • Tomo SDK
    • TomoEVMKit
      • Quick Start
      • Use with Ethers.js
      • Migration from RainbowKit
      • Migration from Blocknative
      • Supported Chains
    • Tomo Web SDK
      • Quick Start
      • Solana Provider
      • EVM Provider
      • Bitcoin Provider
      • Tron Provider
      • Movement Provider
      • Sui Provider
    • Tomo Telegram SDK
      • Quick Start
      • Wallet Provider
        • EVM Provider
        • Solana Provider
        • Sui Provider (Beta)
        • TON Provider
      • Partners
    • Tomo Enterprise SDK
      • For Babylon
        • Install the SDK
        • Tomo Wallet Provider
        • Bitcoin Provider
        • Cosmos Provider
        • Multiple Connection Mode
        • Integrate Extension Wallet
          • Submit Wallet PR
          • Extend the SDK
          • Q & A
        • Integrate Mobile Wallet
  • TOMO WALLET
    • Tomo Wallets
    • Mobile Wallet
      • Tomo Keys
        • Bonding Curve Explained
        • How to: Tomo Keys
      • TomoID
        • How to: TomoID
        • How to: Connect Instagram
      • Tomo Socials
      • Tomo Android App
      • Tomo iOS App
    • Extension Wallet
      • Developer Manual
        • EVM Integration
        • Bitcoin Integration
      • Example of User Flows
        • Claiming Signet BTC
        • Staking at Testnet
      • Install Link
    • Telegram Wallet
      • Quick Start
      • Chains/Networks
      • User Manual
        • Account Security
        • Gift feature
        • FAQ
        • Transaction
        • Swap
  • ABOUT US
    • Brand Assets
    • Privacy Policy
Powered by GitBook
On this page
  • requestAddresses
  • getAddresses
  • signMessage
  • signTypedData
  • sendTransaction
  • sendRawTransaction
  • swithChain
  • recoverMessageAddress
  1. Tomo SDK
  2. Tomo Web SDK
  3. Wallet Providers

EVM Integrations

The EthereumProvider defined in Tomo Connect SDK contains all the necessary functions to interact with EVM chains. Core functions are:

requestAddresses

Implemented eth_requestAccounts

public async requestAddresses()

getAddresses

Implemented eth_accounts

public async getAddresses()

signMessage

Implemented personal_sign

public async signMessage(msg: string, address: string)

signTypedData

Implemented eth_signTypedData_v4

public async signTypedData(address: string, msg: string)

sendTransaction

Implemented eth_sendTransaction

export interface EvmTxParams {
  from: string,
  to: string,
  value: string,
  gasPrice?: string,
  gasLimit?: string,
  maxFeePerGas?: string,
  maxPriorityFeePerGas?: string,
  data?: string,
}

public async sendTransaction(params: EvmTxParams)

sendRawTransaction

Implemented eth_sendRawTransaction

public async sendRawTransaction(signedTx: string) 

swithChain

Implemented wallet_switchEthereumChain

public async swithChain(chainId: string)

recoverMessageAddress

Implemented personal_ecRecover

public async recoverMessageAddress(message: string, signature: string)

Also EthereumProvider is a provider compatible with EIP 1193. It can be integrated with third-party libraries like viem, ethers, just like window.ethereum.

// Integrated with viem
const client = createWalletClient({
  chain: mainnet,
  transport: custom(tomoSDK.ethereumProvider)
})

Last updated 8 months ago