Transactions represent all state changes on Solana. Helius provides multiple ways to read transaction data, from raw RPC methods to enhanced transaction APIs.
Getting a Single Transaction
Retrieve transaction details using the standard RPC method:
const response = await fetch ( "https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY" , {
method: 'POST' ,
headers: { 'Content-Type' : 'application/json' },
body: JSON . stringify ({
jsonrpc: '2.0' ,
id: '1' ,
method: 'getTransaction' ,
params: [
'5brUqZacYhjphkFufZsdJoWA3ACTDh7wX5o4ewHiUGPK5zrLWExsFJb1o83q4SidvgegANZMFqocC4cPyymSEdyt' ,
{
encoding: 'json' ,
maxSupportedTransactionVersion: 0
}
]
})
});
const data = await response . json ();
console . log ( 'Transaction data:' , data );
Enhanced Transaction History
For richer transaction history with parsed data:
const API_KEY = 'YOUR_API_KEY' ;
const WALLET_ADDRESS = 'DjPi9wgUDTtYuuL6ZNvhgKJgC8gHaRKtHq6K5ESWbGKt' ;
const response = await fetch ( `https://api.helius.xyz/v0/addresses/ ${ WALLET_ADDRESS } /transactions?api-key= ${ API_KEY } &limit=10` , {
method: 'GET' ,
});
const transactions = await response . json ();
console . log ( 'Enhanced transaction history:' , transactions );
API Reference Get Enhanced Transactions By Address
Transaction Status Checking
Check the status of multiple transactions:
const response = await fetch ( "https://mainnet.helius-rpc.com/?api-key=YOUR_API_KEY" , {
method: 'POST' ,
headers: { 'Content-Type' : 'application/json' },
body: JSON . stringify ({
jsonrpc: '2.0' ,
id: '1' ,
method: 'getSignatureStatuses' ,
params: [
[
'5iT4xEsUHJXWuUfX7ypPoP2h2KGLmomsSfdTnjaV67NhRiUptvFTpVM4Gdeve2Mr6Ye8mgFPx4ESLxEPMsK6pmVS' ,
'4aRAsUtUSKbz5UAw3z3HZs2wU2NuY614RRfugE8BpfidKrkvjU49VXdSLsT7EPKNRA9KZH1yqkiVKK8aNBoAEdMU'
],
{
searchTransactionHistory: true
}
]
})
});
const statuses = await response . json ();
console . log ( 'Transaction statuses:' , statuses . result );