SPL Token Transfers
This document describes the output structure for the SPL Token decoder functions. The decoder handles five main event types: TRANSFER, MINT, BURN, INITIALIZE_ACCOUNT, and CLOSE_ACCOUNT.
Common Properties
All decoded events include the following base properties from BaseTransactionRecord
:
uuid
bigint
string
Unique identifier for the transaction record
instructionPath
string
string
Path to the instruction within the transaction
parentProgramId
string | null
string | null
ID of the parent program if applicable
txSignature
string
string
Transaction signature
blockTime
number
number
Block timestamp
programId
string
string
SPL Token program ID
eventType
string
string
Type of event (TRANSFER, MINT, BURN, INITIALIZE_ACCOUNT, CLOSE_ACCOUNT)
decoderType
DecoderType
string
Decoder type identifier
blockHeight
number
number
Block height
slot
number
number
Blockchain slot number
txFee
number
number
Transaction fee in lamports
txFeeUiAmount
PreciseDecimal
string
UI-formatted transaction fee
TRANSFER Event
Token transfer event between accounts.
sourceAccount
string
string
Source token account address
sourceOwner
string
string
Owner of the source account
destinationAccount
string
string
Destination token account address
destinationOwner
string
string
Owner of the destination account
mint
string
string
Token mint address
amount
bigint
string
Transfer amount in raw units
uiAmount
PreciseDecimal
string
UI-formatted transfer amount
sourcePreUiAmount
PreciseDecimal
string
Source account balance before transfer
sourcePreAmount
bigint
string
Source account balance before transfer (raw)
sourcePostUiAmount
PreciseDecimal
string
Source account balance after transfer
sourcePostAmount
bigint
string
Source account balance after transfer (raw)
destinationPreUiAmount
PreciseDecimal
string
Destination balance before transfer
destinationPreAmount
bigint
string
Destination balance before transfer (raw)
destinationPostUiAmount
PreciseDecimal
string
Destination balance after transfer
destinationPostAmount
bigint
string
Destination balance after transfer (raw)
MINT Event
Token minting event where new tokens are created.
mint
string
string
Token mint address
destinationAccount
string
string
Account receiving minted tokens
destinationOwner
string
string
Owner of the destination account
amount
bigint
string
Amount of tokens minted (raw)
uiAmount
PreciseDecimal
string
UI-formatted minted amount
destinationPreUiAmount
PreciseDecimal
string
Destination balance before minting
destinationPreAmount
bigint
string
Destination balance before minting (raw)
destinationPostUiAmount
PreciseDecimal
string
Destination balance after minting
destinationPostAmount
bigint
string
Destination balance after minting (raw)
BURN Event
Token burning event where tokens are destroyed.
mint
string
string
Token mint address
sourceAccount
string
string
Account from which tokens are burned
sourceOwner
string
string
Owner of the source account
amount
bigint
string
Amount of tokens burned (raw)
uiAmount
PreciseDecimal
string
UI-formatted burned amount
sourcePreUiAmount
PreciseDecimal
string
Source account balance before burning
sourcePreAmount
bigint
string
Source account balance before burning (raw)
sourcePostUiAmount
PreciseDecimal
string
Source account balance after burning
sourcePostAmount
bigint
string
Source account balance after burning (raw)
INITIALIZE_ACCOUNT Event
Token account initialization event.
mint
string
string
Token mint address
account
string
string
Newly initialized account address
owner
string
string
Owner of the initialized account
CLOSE_ACCOUNT Event
Token account closure event.
mint
string
string
Token mint address
account
string
string
Account being closed
destination
string
string
Account receiving remaining SOL
owner
string
string
Owner of the account being closed
Data Types
bigint
: Large integer values for token amountsstring
: Text values for addresses and identifiersnumber
: Numeric values for timestampsPreciseDecimal
: High-precision decimal representation for UI displayDecoderType
: Enum indicating the decoder type (SPL_TOKEN)
Usage
The decoder automatically determines the event type and returns the appropriate structure. All monetary values are provided in both raw (bigint
) and UI-formatted (PreciseDecimal
) versions for flexibility in different use cases.
Last updated