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

Распространенные проблемы при интеграции SDK [`helius-wallet-kit`](https://www.npmjs.com/package/helius-wallet-kit) и способы их устранения.

## Настройка

### Модальное окно кошелька не стилизовано или отображается неправильно

Таблица стилей SDK не загружена. Импортируйте ее один раз в корневом макете:

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

### Значения хука не меняются (остаются на `loading`)

`useHeliusWallet()` работает только внутри `HeliusWalletProvider`, а провайдер должен быть **клиентским** компонентом. Убедитесь, что провайдер оборачивает дерево компонентов из файла, в начале которого указан `"use client"`. См. раздел [Настройка](/docs/ru/waas/quickstart#настройка).

### `[HeliusWalletKit] WaaS bootstrap failed (…)` в консоли

Провайдеру не удалось определить ваш проект по ключу API. Проверьте следующее:

* Переменная `NEXT_PUBLIC_HELIUS_API_KEY` задана и содержит допустимое значение.
* Проект использует **платный тариф**, на котором включены встроенные кошельки.
* Если вы ограничили ключ по домену, текущий источник входит в список разрешенных. См. раздел [Защита ключа](/docs/ru/waas/securing-your-key).

## Вход

### Вместо кошелька пользователи попадают на экран перехода на платный тариф

Для встроенных кошельков требуется **платный** тариф Helius. Если определенный тариф является бесплатным, провайдер отображает предложение перейти на платный тариф, а серверная часть также отклоняет запрос. Измените тариф проекта в [панели управления](https://dashboard.helius.dev).

### Отображаются неправильные способы входа (например, доступен Google, но отсутствует внешний кошелек)

Способы входа задаются в конфигурации проекта в [панели управления](https://dashboard.helius.dev) в разделе **WaaS → Configuration**. Если для проекта не настроен ни один способ, модальное окно использует настройки по умолчанию для всей организации. Задайте нужные способы в панели управления или передайте `authMethods` в `config` провайдера, чтобы переопределить их для отдельного окружения. См. раздел [Настройка способов входа](/docs/ru/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`

Этот запрос на **отправку** или **приоритетную комиссию** некуда было направить: при инициализации провайдер не определил URL Secure 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/ru/waas/quickstart#настройка).

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

История транзакций доступна только через обработчик маршрута. Добавьте его, как показано выше.

### `getPriorityFeeEstimate is not available`

Devnet не поддерживает оценку приоритетной комиссии — эта функция доступна только в mainnet. Пропускайте получение оценки в devnet. Отправка работает и без приоритетной комиссии.

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

### Транзакция не попадает в mainnet

Без обработчика маршрута для отправки используется стандартный RPC вместо [Helius Sender](/docs/ru/sending-transactions/sender), поэтому оптимизированное попадание транзакций от Sender недоступно. Для наиболее надежного попадания транзакций в mainnet подключите обработчик маршрута. Если отправка завершается ошибкой, обновите хеш блока: устаревший `recentBlockhash` быстро истекает.

## Ключи и доступ

### Вызовы RPC или API отклоняются (401 / 403) после ограничения ключа

В ключе с ограничением по домену отсутствует источник, из которого выполняется вызов. Добавьте все используемые источники — рабочее окружение, промежуточное окружение, предварительные развертывания и `localhost` для разработки — в разделе **RPC Access Control**. См. раздел [Защита ключа](/docs/ru/waas/securing-your-key).

## Проблема не решена?

<CardGroup cols={2}>
  <Card title="Discord" icon="discord" href="https://discord.com/invite/6GXdee3gBj">
    Обратитесь к сообществу и команде Helius.
  </Card>

  <Card title="Support" icon="headset" href="/docs/ru/support">
    Свяжитесь со службой поддержки Helius.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.