> ## 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.

# トラブルシューティング

> Helius埋め込みウォレットを統合する際の最も一般的な問題の修正方法 — スタイリング、サインイン、署名、送信、およびAPIキーアクセス。

[`helius-wallet-kit`](https://www.npmjs.com/package/helius-wallet-kit) SDKを統合する際の一般的な問題とその解決方法。

## セットアップ

### ウォレットモーダルがスタイルされていないか壊れているように見える

SDKのスタイルシートが読み込まれていません。ルートレイアウトで一度インポートしてください。

```tsx app/layout.tsx theme={"system"}
import "helius-wallet-kit/ui/styles.css";
```

### フックの値が変わらない（`loading`で固まっている）

`useHeliusWallet()`は、`HeliusWalletProvider`内でのみ機能し、プロバイダーは**クライアント**コンポーネントである必要があります。プロバイダーがコンポーネントツリーを囲み、ファイルの先頭に`"use client"`があることを確認してください — [セットアップ](/docs/ja/waas/quickstart#セットアップ)を参照。

### コンソールに`[HeliusWalletKit] WaaS bootstrap failed (…)`

プロバイダーがAPIキーからプロジェクトを解決できませんでした。以下を確認してください。

* `NEXT_PUBLIC_HELIUS_API_KEY`が設定されており、有効である。
* プロジェクトが埋め込みウォレットを有効にした**有料プラン**である。
* ドメイン制限を行った場合、現在のオリジンが許可リストにある — [キーのセキュリティ確保](/docs/ja/waas/securing-your-key)を参照。

## サインイン

### ユーザーが「アップグレード」画面に遷移し、ウォレットにアクセスできない

埋め込みウォレットは**有料**Heliusプランを必要とします。解決されたプランが無料の場合、プロバイダーはアップグレードのプロンプトを表示します（バックエンドもサーバー側でリクエストを拒否します）。プロジェクトを[ダッシュボード](https://dashboard.helius.dev)でアップグレードしてください。

### 間違ったサインイン方法が表示される（例: Googleが表示され、外部ウォレットが欠落）

サインイン方法は[ダッシュボード](https://dashboard.helius.dev)のプロジェクト設定の**WaaS → 設定**から提供されます。プロジェクトに設定がない場合、モーダルは組織全体のデフォルトにフォールバックします。ダッシュボードで希望する方法を設定するか、`authMethods`をプロバイダー`config`に渡して環境ごとに上書きしてください — [サインイン方法の設定](/docs/ja/waas/configuration#サインイン方法の設定)を参照。

### パスキーサインインが失敗したり、パスキーが登録されていないと表示される

パスキーは作成された**ドメインと認証装置**にバインドされています（WebAuthnの制約であり、Heliusのものではありません）。別のサイトやデバイスで登録されたパスキーやセキュリティキーはアプリを認証しません。テストしているドメインでパスキーを作成してください — `localhost`で作成されたパスキーは`localhost`にバインドされており、デプロイされたドメインには引き継がれません。

## 署名と送信

### 署名時の`No wallet available`

埋め込みウォレットがプロビジョニングを完了する前に署名メソッドを呼び出しました。署名は、`status === "authenticated"` **および** 非nullの`address`の両方でゲートしてください。

```tsx theme={"system"}
const { status, address, signMessage } = useHeliusWallet();
const ready = status === "authenticated" && address;
```

### `… failed (HTTP 404). Set secureRpcUrl …, or mount the Helius route handler`

直接（セキュアRPC）モードで実行しており、この呼び出し — **送信**または**優先手数料**リクエスト — はサーバールートハンドラーが必要です。`/api/helius/[...path]`にマウントし、`HELIUS_API_KEY`を設定してください。

```ts app/api/helius/[...path]/route.ts theme={"system"}
import { createHeliusRouteHandler } from "helius-wallet-kit/next";

export const { GET, POST } = createHeliusRouteHandler();
```

[サーバールートハンドラー](/docs/ja/waas/quickstart#セットアップ)を参照。

### `getTransactions needs the Helius route handler … it isn't available in direct/secure-URL mode`

トランザクション履歴はルートハンドラーを通してのみ利用可能です。上記のように追加してください。

### `getPriorityFeeEstimate is not available`

Devnetは優先手数料見積もりをサポートしていません — これはメインネットの機能です。Devnetではルックアップをスキップします。送信は優先手数料なしでも動作します。

```tsx theme={"system"}
if (cluster === "mainnet-beta") {
  const fees = await getPriorityFeeLevels([address]);
}
```

### トランザクションがメインネットに到達しない

ルートハンドラーなしで送信は標準RPCを使用し、[Helius Sender](/docs/ja/sending-transactions/sender)の最適化された着地を逃します。最適なメインネット着地のためにルートハンドラーをマウントしてください。送信が完全に失敗する場合は、ブロックハッシュをリフレッシュしてください — 古い`recentBlockhash`はすぐに期限切れになります。

## キーとアクセス

### RPCまたはAPI呼び出しがキーのロック後に拒否される（401 / 403）

ドメイン制限されたキーに、呼び出し元のオリジンが含まれていません。**RPCアクセス制御**の下で、使用するすべてのオリジン — 本番、ステージング、プレビューデプロイ、開発用の`localhost` — を追加します — [キーのセキュリティ確保](/docs/ja/waas/securing-your-key)を参照。

## まだ解決しない場合

<CardGroup cols={2}>
  <Card title="Discord" icon="discord" href="https://discord.com/invite/6GXdee3gBj">
    コミュニティとHeliusチームに質問してください。
  </Card>

  <Card title="サポート" icon="headset" href="/docs/ja/support">
    Heliusサポートに連絡してください。
  </Card>
</CardGroup>
