Incoming Tokens

Stay on Top of Token Transactions with INCOMING_FUNGIBLE_TX Notifications

In the ever-evolving world of blockchain, keeping track of fungible token transactions is essential for maintaining a secure and efficient platform. Tatum's INCOMING_FUNGIBLE_TX notification type offers a powerful solution to help you stay informed about incoming fungible token transactions (e.g., ERC-20 transfers) involving a specific address.

πŸ“˜

Hint

A fungible token is a type of digital asset that is interchangeable and holds the same value across all its individual units. Examples of fungible tokens include popular cryptocurrencies like Bitcoin (BTC) and Ether (ETH), as well as ERC-20 tokens like Chainlink (LINK) and USD Coin (USDC), which can be easily exchanged, divided, and combined without altering their overall worth.

How to do it?

curl -i -X POST \
  https://api.tatum.io/v4/subscription?type=mainnet \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: <YOUR-API-KEY>' \
  -d '{
    "type": "INCOMING_FUNGIBLE_TX",
    "attr": {
      "address": "0xF64E82131BE01618487Da5142fc9d289cbb60E9d",
      "chain": "ETH",
      "url": "https://<YOUR_WEBHOOK_URL>"
    }
  }'
import { TatumSDK, Ethereum, Network } from '@tatumio/tatum'

(async () => {
    const tatum = await TatumSDK.init<Ethereum>({network: Network.ETHEREUM})
    
    const monitoredAddress = '0xF64E82131BE01618487Da5142fc9d289cbb60E9d'
    
    const subscription = await tatum.notification.subscribe.incomingFungibleTx({
        address: monitoredAddress,
        url: 'https://<YOUR_WEBHOOK_URL>' // replace with your handler URL
    })
    console.log(`Now you will be notified about all incoming token transactions on ${monitoredAddress}`)
})()

πŸ“˜

Hint

This notification will be fired no matter what kind of Token arrives at the monitored address.

What does the fired webhook look like?

The fired notification webhook you will receive in your webhook listener will have the following format.

{
  "currency": "ETH",
  "chain": "ethereum-mainnet",
  "amount": "1",
  "address": "0xF64E82131BE01618487Da5142fc9d289cbb60E9d",
  "counterAddress": "0x690B9A9E9aa1C9dB991C7721a92d351Db4FaC990",
  "subscriptionType": "INCOMING_FUNGIBLE_TX",
  "blockNumber": 2913059,
  "txId": "0x062d236ccc044f68194a04008e98c3823271dc26160a4db9ae9303f9ecfc7bf6",
  "contractAddress": "0x743e8b6cc1676adae0e3243b5c011f7139c26128"
}

Which blockchain networks are supported?

BlockchainMainnetTestnet
EthereumNetwork.ETHEREUMNetwork.ETHEREUM_SEPOLIA, Network.ETHEREUM_HOLESKY
PolygonNetwork.POLYGONNetwork.POLYGON_MUMBAI
Binance Smart ChainNetwork.BINANCE_SMART_CHAINNetwork.BINANCE_SMART_CHAIN_TESTNET
FlareNetwork.FLARENetwork.FLARE_COSTON, Network.FLARE_COSTON_2, Network.FLARE_SONGBIRD
CeloNetwork.CELONetwork.CELO_ALFAJORES
KlaytnNetwork.KLAYTNNetwork.KLATN_BAOBAB
SolanaNetwork.SOLANANetwork.SOLANA_DEVNET
TezosNetwork.TEZOSNetwork.TEZOS_TESTNET
TronNetwork.TRONNetwork.TRON_SHASTA