πŸͺ™Token Management

Complete guide for managing ERC20 tokens and ERC721 NFTs on Somnia blockchain.

Overview

The SDK provides utilities for interacting with ERC20 tokens and ERC721 NFTs, including transfers, approvals, and balance queries.

ERC20 Token Operations

Initialize ERC20 Manager

import { SomniaAgentKit, SOMNIA_NETWORKS } from 'somnia-agent-kit';

// Initialize SDK
const kit = new SomniaAgentKit({
  network: SOMNIA_NETWORKS.testnet,
  contracts: {
    agentRegistry: process.env.AGENT_REGISTRY_ADDRESS!,
    agentManager: process.env.AGENT_MANAGER_ADDRESS!,
    agentExecutor: process.env.AGENT_EXECUTOR_ADDRESS!,
    agentVault: process.env.AGENT_VAULT_ADDRESS!,
  },
  privateKey: process.env.PRIVATE_KEY,
});

await kit.initialize();

// Get ERC20 manager (recommended)
const erc20 = kit.getERC20Manager();

Get Token Information

Check Balance

Transfer Tokens

Approve Spending

Check Allowance

Transfer From (Using Allowance)

ERC721 NFT Operations

Initialize ERC721 Manager

Get Collection Information

Check NFT Owner

Get NFT Balance

Transfer NFT

Approve NFT Transfer

Set Approval for All

Get NFT Metadata

Complete Example: Token Transfer Bot

Best Practices

1. Always Check Balance Before Transfer

2. Handle Token Decimals Correctly

3. Verify NFT Ownership

4. Use Safe Transfer for NFTs

5. Handle Errors Gracefully

Listen to Token Events

ERC20 Transfer Events

ERC721 Transfer Events

See Also

Last updated