What This Includes
Transaction decoding and enrichment combines two core capabilities:- Wallet activity categorisation (what type of action occurred)
- ABI-based decoding and labelling (what the transaction did at a contract level)
Wallet Activity Decoding
Moralis can return a single, chronological view of a wallet’s onchain activity, covering all major transaction types. This includes:- Native transfers
- ERC20 swaps and token transfers
- NFT transfers and sales
- DeFi interactions
- Smart contract interactions
Key Benefits
- Single API request
Fetch a complete wallet history in one call. - Automatic categorisation
Each transaction is classified into a clear, human-readable category. - Reduced complexity
No need to manually decode logs, traces, or contract calls. - Consistent ordering
Transactions are returned in a clean, chronological format.
Transaction Categories
Each transaction is assigned a category based on its onchain behavior. Currently supported categories include:- Send
- Receive
- Token Send
- Token Receive
- NFT Send
- NFT Receive
- Deposit
- Withdraw
- Token Swap
- Airdrop
- Mint
- Burn
- NFT Purchase
- NFT Sale
- Borrow
- Approve
- Revoke
- Contract Interaction
Category support is continuously expanding as new transaction patterns and protocols are added.
ABI Decoding & Transaction Labelling
Beyond high-level categories, Moralis also decodes transactions at the contract interaction level. Using verified ABIs and internal decoding logic, Moralis:- Decodes method calls
- Interprets parameters
- Assigns meaningful labels to transactions
Why This Matters
Transaction decoding and enrichment enables you to:- Build readable wallet activity feeds
- Show users what they actually did onchain
- Power analytics, notifications, and alerts
- Avoid custom ABI decoding and protocol-specific logic
- Deliver consistent UX across chains and protocols
- Wallets and portfolio trackers
- Analytics dashboards
- Tax and accounting tools
- Compliance and monitoring systems
Important Notes
- Decoding and categorisation are best-effort and based on available onchain data and ABIs
- Unknown or unverified contracts may fall back to generic labels (e.g.
Contract Interaction) - New transactions occurring during pagination will not affect already-decoded results (see Pagination)

