How to Access Native VET Transfers on VeChainThor
This article shows you how to access VET transfers and filter them by sender, recipient, or transaction origin. This is important for building analytics tools, portfolio trackers, or transaction explorers.
Unlike other tokens on VeChainThor, VET doesn't have a smart contract address. It's the native blockchain currency, which means you can't query its transfers through standard event logs. Instead, VeChain provides a dedicated method: logs.filterTransferLogs.
What Is a VET Transfer?
VET is the native token of VeChainThor. Transfers of VET do not rely on a smart contract, so they are not logged like ERC-20 token events.
To query them, VeChain provides a native transfer log filtering system using logs.filterTransferLogs()
This method lets developers search for VET transfers directly from the blockchain’s event logs, and filter by:
Sender
Recipient
Transaction Origin
Reading VET Transfers with the VeChain SDK
Let’s look at an example:
Breakdown of Parameters
range: Block range to search throughoptions: Controls pagination (offset, limit)criteriaSet: All filters are optional and can be used for filtering bysender,recipient, ortxOriginorder:ascordescby block height
Each transfer log contains:
sender: The address sending VETrecipient: The address receiving VETamount: Inweimeta: Metadata like block number, timestamp, and txID
Transaction Heatmaps: Which App or Protocol Does a Wallet Interact With Most?
Once you’ve accessed VET transfer data, you can begin to analyze wallet behavior over time. This is important for building analytics dashboards, token explorers, or portfolio tools.
A transaction heatmap refers to a summary of how frequently a wallet interacts with other addresses or protocols. This helps answer questions like:
What protocols does this wallet use most frequently?
Are they interacting with DEXes, bridges, or governance contracts?
How many distinct protocols has this wallet engaged with?
Saving Data
Transfer logs can be stored and reused by applications for analytics, dashboards, or historical tracking. The data is deterministic and can be retrieved again at any time using the same parameters. Developers can choose how to store and query this information.
Tracking Frequent Interactions
By counting how often a wallet sends or receives VET from specific addresses, it’s possible to build summaries of recurring interactions. This allows applications to surface insights such as top counterparties, active wallets, or common transaction flows. These insights can be used in transaction explorers, dashboards, or user analytics tools.
To build an interaction map:
Group transfers by
(sender -> recipient)or(txOrigin -> recipient)Count transactions over time (daily, weekly, monthly)
Track total VET volume per target address
You can go further by:
Mapping timestamps to build time-based heatmaps
Filtering out common system addresses (e.g., burn addresses)
Tracking
txOriginto see which wallet initiated the most interaction
Identify Contract Addresses
While VET transfers do not include contract events, it’s still possible to identify whether a wallet is interacting with a known protocol.
You can use vechainstats.com - they provide a public registry of:
Verified smart contract addresses
Protocol names (e.g., Vexchange, VeRocket)
Known DEXes, bridges, etc.
Why This Matters
Tracking native VET transfers is important for:
Understanding wallet activity
Powering transaction explorers
Identifying top endpoints for value flow
Supporting wallet dashboards with native token history
Building behavioral insights into user-protocol interactions
Join our Telegram