> ## Documentation Index
> Fetch the complete documentation index at: https://www.helius.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Verwendung der Wallet

> Lesen Sie den Authentifizierungsstatus, signieren Sie Nachrichten und Transaktionen, senden Sie und lesen Sie den Verlauf mit useHeliusWallet

## Authentifizierung

Verwenden Sie den `useHeliusWallet` Hook, um den Authentifizierungsstatus zu lesen und das Sign-In zu steuern:

```tsx theme={"system"}
"use client";

import { useHeliusWallet } from "helius-wallet-kit";

export function AuthButton() {
  const { status, login, logout, address } = useHeliusWallet();

  if (status === "loading") return <p>Loading…</p>;

  if (status === "authenticated") {
    return (
      <div>
        <span>{address}</span>
        <button onClick={() => logout()}>Sign out</button>
      </div>
    );
  }

  return <button onClick={() => login()}>Sign in</button>;
}
```

Das Aufrufen von `login()` öffnet das Wallet-Modal mit den von Ihnen aktivierten Authentifizierungsmethoden.

Nach dem Sign-In wird `status` zu `"authenticated"` und `user` wird mit der Benutzer-ID, der Sub-Organisation-ID und der Wallet-ID gefüllt.

Wählen Sie aus, welche Sign-In-Methoden im Dashboard angezeigt werden sollen — siehe [Sign-In-Methoden konfigurieren](/docs/de/waas/configuration#anmeldemethoden-konfigurieren).

## Signieren und Senden

`useHeliusWallet` stellt die Wallet-Adresse, Signiermethoden und eine gebrauchsfertige Solana `Connection` bereit, die mit Helius RPC verbunden ist.

### Eine Nachricht signieren

```tsx theme={"system"}
const { signMessage } = useHeliusWallet();
const signature = await signMessage("Sign in to Acme");
```

### Eine Transaktion signieren und senden

`signAndSendTransaction` signiert die Transaktion clientseitig und übermittelt sie über Helius. Es nimmt eine serialisierte Transaktion und liefert die Transaktionssignatur zurück.

```tsx theme={"system"}
import {
  Transaction,
  SystemProgram,
  PublicKey,
  LAMPORTS_PER_SOL,
  ComputeBudgetProgram,
} from "@solana/web3.js";

const { address, connection, signAndSendTransaction, getPriorityFeeLevels } =
  useHeliusWallet();

const fromPubkey = new PublicKey(address!);
const toPubkey = new PublicKey(recipient);

// Estimate a priority fee from Helius.
const fees = await getPriorityFeeLevels([address!, recipient]);

const tx = new Transaction()
  .add(ComputeBudgetProgram.setComputeUnitPrice({ microLamports: fees.medium }))
  .add(
    SystemProgram.transfer({
      fromPubkey,
      toPubkey,
      lamports: 0.01 * LAMPORTS_PER_SOL,
    }),
  );

const { blockhash } = await connection.getLatestBlockhash();
tx.recentBlockhash = blockhash;
tx.feePayer = fromPubkey;

const serialized = tx.serialize({
  requireAllSignatures: false,
  verifySignatures: false,
});

const signature = await signAndSendTransaction(serialized);
```

<Tip>
  Verwenden Sie `signTransaction` anstelle von `signAndSendTransaction`, wenn Sie die
  Signatur der Wallet ohne Broadcasting benötigen — z.B. um sie zu einer
  Multi-Party-Transaktion hinzuzufügen, bevor Sie sie selbst einreichen.
</Tip>

### Transaktionshistorie lesen

```tsx theme={"system"}
const { getTransactions } = useHeliusWallet();
const transactions = await getTransactions({ limit: 20 });
```

<Note>
  `getTransactions` erfordert den [Server-Route-Handler](/docs/de/waas/quickstart#einrichtung) —
  es ist nicht im Standard-Client-Modus (Secure RPC) verfügbar.
</Note>

### Wallet exportieren

Wallets sind nicht-custodial, daher können Benutzer ihre Schlüssel mitnehmen. `exportWallet` öffnet einen sicheren, verschlüsselten Ablauf, damit der eingeloggte Benutzer seinen privaten Schlüssel anzeigen und exportieren kann.

```tsx theme={"system"}
const { exportWallet } = useHeliusWallet();
await exportWallet();
```

## Nächste Schritte

<CardGroup cols={2}>
  <Card title="API-Referenz" icon="code" href="/docs/de/waas/api-reference">
    Die vollständige `useHeliusWallet()` Oberfläche und Importe.
  </Card>

  <Card title="Migration von Privy" icon="arrow-right-arrow-left" href="/docs/de/waas/migrating-from-privy">
    Bestehende Privy-Wallets zu Helius WaaS verschieben
  </Card>
</CardGroup>
