Grundlegende Zahlung

Solana ermöglicht sofortige, globale Token-Überweisungen mit Gebühren unter 0,001 $. Egal, ob Sie grenzüberschreitende Überweisungen, Gehaltsauszahlungen oder Treasury- Operationen aufbauen – eine grundlegende Stablecoin-Zahlung wird in unter einer Sekunde abgewickelt und kostet einen Bruchteil eines Cents.

So funktioniert es

Eine Zahlung verschiebt Stablecoins vom Token-Konto des Absenders zum Token-Konto des Empfängers. Wenn der Empfänger diesen Token zum ersten Mal erhält, kann sein Token-Konto als Teil derselben Transaktion erstellt werden.

Siehe Wie Zahlungen auf Solana funktionieren für grundlegende Zahlungskonzepte.

Der splToken-Helfer aus @solana/client übernimmt automatisch die ATA- Ableitung, Dezimalkonvertierung und Transaktionserstellung. Dies ist ideal für einzelne Zahlungsüberweisungen.

Die folgenden Schritte zeigen den grundlegenden Ablauf. Siehe die Demo für vollständigen ausführbaren Code.

Token-Helfer erstellen

Konfigurieren Sie den splToken()-Helfer, indem Sie client.splToken() mit der Mint- Adresse aufrufen. Der Helfer bietet Methoden für gängige Token-Operationen.

Durch Setzen von tokenProgram: "auto" wird automatisch erkannt, ob das Mint-Konto dem Token- oder Token-2022-Programm gehört.

Zahlung senden

Verwenden Sie sendTransfer(), um Token zwischen Wallets zu übertragen. Die Methode übernimmt:

  • ATA-Auflösung: Leitet automatisch Associated Token Accounts (ATAs) für den Absender und Empfänger ab. Wenn das ATA des Empfängers nicht existiert, wird die Anweisung zum Erstellen des Kontos automatisch zur selben Transaktion hinzugefügt.
  • Dezimalkonvertierung: Akzeptiert Token-Beträge und konvertiert automatisch in Basiseinheiten basierend auf den Dezimalstellen des Mints (z. B. 0,25 Token -> 250000 Basis- einheiten, wenn der Mint 6 Dezimalstellen hat)
  • Transaktionserstellung: Erstellt, signiert und sendet die Transaktion mit der Überweisungsanweisung
Basic Payment
const client = createClient({
endpoint: "http://localhost:8899",
websocketEndpoint: "ws://localhost:8900",
commitment: "confirmed"
});
const splToken = client.splToken({
mint: mint.address,
tokenProgram: "auto"
});
const signature = await splToken.sendTransfer({
amount: 0.25,
authority: sender,
destinationOwner: recipient.address
});

Guthaben überprüfen

Nachdem die Übertragung abgeschlossen ist, verwenden Sie fetchBalance(), um die Token-Guthaben zu überprüfen. Diese Methode nimmt eine Wallet-Adresse entgegen und leitet automatisch das entsprechende ATA ab, um das Guthaben abzurufen.

Basic Payment
const client = createClient({
endpoint: "http://localhost:8899",
websocketEndpoint: "ws://localhost:8900",
commitment: "confirmed"
});
const splToken = client.splToken({
mint: mint.address,
tokenProgram: "auto"
});
const signature = await splToken.sendTransfer({
amount: 0.25,
authority: sender,
destinationOwner: recipient.address
});
const senderBalance = await splToken.fetchBalance(sender.address);
const recipientBalance = await splToken.fetchBalance(recipient.address);

Token-Helfer erstellen

Konfigurieren Sie den splToken()-Helfer, indem Sie client.splToken() mit der Mint- Adresse aufrufen. Der Helfer bietet Methoden für gängige Token-Operationen.

Durch Setzen von tokenProgram: "auto" wird automatisch erkannt, ob das Mint-Konto dem Token- oder Token-2022-Programm gehört.

Zahlung senden

Verwenden Sie sendTransfer(), um Token zwischen Wallets zu übertragen. Die Methode übernimmt:

  • ATA-Auflösung: Leitet automatisch Associated Token Accounts (ATAs) für den Absender und Empfänger ab. Wenn das ATA des Empfängers nicht existiert, wird die Anweisung zum Erstellen des Kontos automatisch zur selben Transaktion hinzugefügt.
  • Dezimalkonvertierung: Akzeptiert Token-Beträge und konvertiert automatisch in Basiseinheiten basierend auf den Dezimalstellen des Mints (z. B. 0,25 Token -> 250000 Basis- einheiten, wenn der Mint 6 Dezimalstellen hat)
  • Transaktionserstellung: Erstellt, signiert und sendet die Transaktion mit der Überweisungsanweisung

Guthaben überprüfen

Nachdem die Übertragung abgeschlossen ist, verwenden Sie fetchBalance(), um die Token-Guthaben zu überprüfen. Diese Methode nimmt eine Wallet-Adresse entgegen und leitet automatisch das entsprechende ATA ab, um das Guthaben abzurufen.

Basic Payment
const client = createClient({
endpoint: "http://localhost:8899",
websocketEndpoint: "ws://localhost:8900",
commitment: "confirmed"
});
const splToken = client.splToken({
mint: mint.address,
tokenProgram: "auto"
});

Demo

Demo
// Generate keypairs for sender and recipient
const sender = (await generateKeypair()).signer;
const recipient = (await generateKeypair()).signer;
console.log("Sender Address:", sender.address);
console.log("Recipient Address:", recipient.address);
// Demo Setup: Create client, mint account, token accounts, and fund with initial tokens
const { client, mint } = await demoSetup(sender, recipient);
console.log("\nMint Address:", mint.address);
// =============================================================================
// Basic Token Payment Demo
// =============================================================================
// Create splToken helper for this mint using @solana/client
const splToken = client.splToken({
mint: mint.address,
tokenProgram: "auto"
});
// Transfer tokens from sender to recipient (ATA and decimals handled automatically)
const signature = await splToken.sendTransfer({
amount: 0.25,
authority: sender,
destinationOwner: recipient.address
});
console.log("\n=== Token Payment Complete ===");
console.log("Transaction Signature:", signature.toString());
// Fetch final token account balances using splToken helper
const senderBalance = await splToken.fetchBalance(sender.address);
const recipientBalance = await splToken.fetchBalance(recipient.address);
console.log("\nSender Token Account Balance:", senderBalance);
console.log("Recipient Token Account Balance:", recipientBalance);
// =============================================================================
// Demo Setup Helper Function
// =============================================================================
Console
Click to execute the code.

Is this page helpful?

Inhaltsverzeichnis

Seite bearbeiten

Verwaltet von

© 2026 Solana Foundation.
Alle Rechte vorbehalten.
Verbinden Sie sich