Documentation SolanaLiteSVMTypeScriptExemples

Transfert de SOL

La transaction Solana la plus basique : déplacer des SOL d'un compte à un autre. C'est un bon premier test pour vérifier que votre configuration LiteSVM fonctionne avant de tester une logique de programme plus complexe.

Exemple complet

import { createClient, generateKeyPairSigner, lamports } from "@solana/kit";
import { litesvm } from "@solana/kit-plugin-litesvm";
import { signer } from "@solana/kit-plugin-signer";
import { systemProgram } from "@solana-program/system";
// Payer first, then the LiteSVM transport, then program plugins.
const mySigner = await generateKeyPairSigner();
const client = createClient()
.use(signer(mySigner))
.use(litesvm())
.use(systemProgram());
const recipient = await generateKeyPairSigner();
// Airdrop SOL to the payer
client.svm.airdrop(client.payer.address, lamports(10_000_000_000n));
// Check initial balance
const senderInitial = client.svm.getBalance(client.payer.address) ?? 0n;
console.log("Sender initial:", Number(senderInitial) / 1e9, "SOL");
// Build and send the transfer
await client.system.instructions
.transferSol({
source: client.payer,
destination: recipient.address,
amount: lamports(1_000_000_000n) // 1 SOL
})
.sendTransaction();
// Check final balances
const senderFinal = client.svm.getBalance(client.payer.address) ?? 0n;
const recipientFinal = client.svm.getBalance(recipient.address) ?? 0n;
console.log("Sender final:", Number(senderFinal) / 1e9, "SOL");
console.log("Recipient final:", Number(recipientFinal) / 1e9, "SOL");

Résultat attendu

Sender initial: 10 SOL
Sender final: 8.999995 SOL
Recipient final: 1 SOL

Le solde final de l'expéditeur est légèrement inférieur à 9 SOL en raison des frais de transaction (5 000 lamports par signature).

Cela couvre le type de transaction le plus simple. Pour tester avec des programmes personnalisés, consultez Tests de programmes. Pour les transferts de tokens (frappes, ATAs), consultez Tests de tokens.

Is this page helpful?

Table des matières

Modifier la page
© 2026 Fondation Solana. Tous droits réservés.