WithdrawExcessLamports è l'istruzione 38. Vedi documentazione e processor.
| Account | Writable | Signer | Ruolo |
|---|---|---|---|
source | Sì | A volte | Fonte |
destination | Sì | No | Riceve lamport |
authority | No | Dipende | Autorizza |
multiSigners | No | Se usati | Soglia multisig |
Wallet owner, membri M-di-N, mint authority o il mint stesso firmano secondo la fonte; off-curve richiede CPI/PDA.
import { getWithdrawExcessLamportsInstruction } from "@solana-program/token";
const instruction = getWithdrawExcessLamportsInstruction({
source,
destination,
authority,
});
await client.sendTransaction([instruction]);
authority è TransactionSigner; usa multiSigners. Combina @solana-program/token con @solana/kit. Nel 2026 distingui 2 famiglie: Token-2022 è una.
0.00203928 SOL: è il vecchio minimo di 165 byte.Token-2022 può superare 82 o 165 byte. CPI Guard può bloccare; Wrapped SOL nativo restituisce NativeNotSupported. Vale per preview Token-2022 e transazioni Token-2022. Verifica ogni WithdrawExcessLamports.
Ogni integrazione Token-2022 deve usare la dimensione reale.
curl -X POST https://v2.api.sol-incinerator.com/withdraw-excess-lamports/preview \
-H "content-type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"userPublicKey": "DESTINATION_WALLET",
"sourceAccount": "TOKEN_ACCOUNT_MINT_OR_MULTISIG"
}'
POST /withdraw-excess-lamportsPOST /withdraw-excess-lamports-instructions
userPublicKey è destinazione e authority predefinita. Opzionali authorityPublicKey e fino a 11 multisigSignerPublicKeys. Fee base 200 bps; disponibili partnerFeeAccount, partnerFeeBps e feeLamports.
