MintTo
Sample Transaction
CPI logs
Parsed transaction
Buy
Sample Transaction
https://solscan.io/tx/2a4jp61oxBEXEWrF4DRinseFdxjgkTnCW77cdsnBQ5dNSQk4SoGzrYQGZLkhaPdDVjLfpqkrL88EJ653p5krXXCz
CPI logs
{16 items
mint:
"3Macznfowud7EiaPsr3cpecgxrsRmry7Z2g1mFKspump"
solAmount:
"10794395"
tokenAmount:
"88805500508"
isBuy:
true
user:
"AuB889jZ2Jhit4KEUVqy8mjDt4fgAXPVZDbe62xutpfs"
timestamp:
"1747423548"
virtualSolReserves:
"62557182483"
virtualTokenReserves:
"514569213457871"
realSolReserves:
"32557182483"
realTokenReserves:
"234669213457871"
feeRecipient:
"62qc2CNXwrYqQScmEdiZFFAnJR262PxWEuNQtxfafNgV"
feeBasisPoints:
"95"
fee:
"102547"
creator:
"CpPkarc9V2HqbvdfCiof7nwiH5g97PqTEqMEgp7NGBpA"
creatorFeeBasisPoints:
"5"
creatorFee:
"5398"
}
Parsed transaction
320 => {
// Parse PumpSwapData fields
let timestamp = parse_u64(buffer, 16)?;
let base_amount_in = parse_u64(buffer, 24)?;
let min_quote_amount_out = parse_u64(buffer, 32)?;
let user_base_token_reserves = parse_u64(buffer, 40)?;
let user_quote_token_reserves = parse_u64(buffer, 48)?;
let pool_base_token_reserves = parse_u64(buffer, 56)?;
let pool_quote_token_reserves = parse_u64(buffer, 64)?;
let quote_amount_out = parse_u64(buffer, 72)?;
let lp_fee_basis_points = parse_u64(buffer, 80)?;
let lp_fee = parse_u64(buffer, 88)?;
let protocol_fee_basis_points = parse_u64(buffer, 96)?;
let protocol_fee = parse_u64(buffer, 104)?;
let quote_amount_out_without_lp_fee = parse_u64(buffer, 112)?;
let user_quote_amount_out = parse_u64(buffer, 120)?;
let pool = parse_public_key(buffer, 128)?;
let user = parse_public_key(buffer, 160)?;
let user_base_token_account = parse_public_key(buffer, 192)?;
let user_quote_token_account = parse_public_key(buffer, 224)?;
let protocol_fee_recipient = parse_public_key(buffer, 256)?;
let protocol_fee_recipient_token_account = parse_public_key(buffer, 288)?;
let is_buy = quote_amount_out_without_lp_fee > quote_amount_out;
Some(TradeInfoFromToken {
instruction_type: InstructionType::PumpSwap,
slot: 0, // Will be set from transaction data
recent_blockhash: Hash::default(), // Will be set from transaction data
signature: String::new(), // Will be set from transaction data
target: String::new(), // Will be set from transaction data
mint: String::new(), // Will be set from pool data
user,
timestamp,
is_buy,
// PumpSwapData fields
base_amount_in: Some(base_amount_in),
min_quote_amount_out: Some(min_quote_amount_out),
user_base_token_reserves: Some(user_base_token_reserves),
user_quote_token_reserves: Some(user_quote_token_reserves),
pool_base_token_reserves: Some(pool_base_token_reserves),
pool_quote_token_reserves: Some(pool_quote_token_reserves),
quote_amount_out: Some(quote_amount_out),
lp_fee_basis_points: Some(lp_fee_basis_points),
lp_fee: Some(lp_fee),
protocol_fee_basis_points: Some(protocol_fee_basis_points),
protocol_fee: Some(protocol_fee),
quote_amount_out_without_lp_fee: Some(quote_amount_out_without_lp_fee),
user_quote_amount_out: Some(user_quote_amount_out),
pool: Some(pool),
user_base_token_account: Some(user_base_token_account),
user_quote_token_account: Some(user_quote_token_account),
protocol_fee_recipient: Some(protocol_fee_recipient),
protocol_fee_recipient_token_account: Some(protocol_fee_recipient_token_account),
// PumpFunData fields - None
sol_amount: None,
token_amount: None,
virtual_sol_reserves: None,
virtual_token_reserves: None,
real_sol_reserves: None,
real_token_reserves: None,
// Additional fields
bonding_curve: String::new(),
volume_change: 0,
bonding_curve_info: None,
pool_info: None,
token_amount_f64: base_amount_in as f64,
amount: None,
max_sol_cost: None,
min_sol_output: None,
base_amount_out: None,
max_quote_amount_in: None,
})
},
Sell
Sample Transaction
https://solscan.io/tx/5nKwkb8RK5ERArnyRrJQgD2nwEydpGjpt6ZUauDYEaHzuJmzJUKa9G9b6dhyiv4EGvx6QsVfx3ALfmFwXNuzAG6L
CPI logs
{16 items
mint:
"5aQiK8xyQSxSWfQQ3sUFBYwdUSkt4tdsQRFKbf35pump"
solAmount:
"626662726"
tokenAmount:
"19506615151751"
isBuy:
false
user:
"p1g4ZJUiMLSpzVPLtqwaDF8ik8GwzQSSN3j998LHLZ4"
timestamp:
"1747423548"
virtualSolReserves:
"31846004927"
virtualTokenReserves:
"1010801830581940"
realSolReserves:
"1846004927"
realTokenReserves:
"730901830581940"
feeRecipient:
"62qc2CNXwrYqQScmEdiZFFAnJR262PxWEuNQtxfafNgV"
feeBasisPoints:
"95"
fee:
"5953296"
creator:
"Fi8Bo3EDjhazdtAqVnapUPfoFDrmXsL9Q8hznKx2G162"
creatorFeeBasisPoints:
"5"
creatorFee:
"313332"
}
Parsed transaction