---
title: Troubleshooting
description: Named fixes for the errors developers hit building and deploying Polkadot Products — allowances, unannounced phone prompts, deploy pauses, and more.
categories: Apps
url: https://docs.polkadot.com/apps/troubleshooting/
word_count: 1122
token_estimate: 1660
version_hash: sha256:c7e928bfcdbafe71a1a6d3c756cf4ea58d9193c79980410219df23ac1e3a03d8
last_updated: 2026-10-12T15:58:08+00:00
---

# Troubleshooting

Named entries for the failures developers hit most while building and deploying Polkadot Products. Each one states the cause and the resolution.

!!! note "Who operates each environment"
    Polkadot Products can target environments run by two different operators. Each operator deploys, maintains, and supports its own environment, so report a problem to the operator of the environment where it occurs. See [Choose the Right Channel](/get-support/#choose-the-right-channel) for where to ask.

    - **Parity**: Runs Paseo Next v2 (the `paseo` preset, parachain 1500) and the services on it, including dotNS and the Playground directory, and maintains the `playground` CLI these docs use. Parity publishes development builds of Polkadot Desktop on the [`polkadot-desktop-community` releases page](https://github.com/paritytech/polkadot-desktop-community/releases) and nightly Android builds of the Polkadot App on the [`trinity-user-agents` releases page](https://github.com/paritytech/trinity-user-agents/releases/tag/nightly-android). Ask about Paseo Next v2 or Parity's tools through [Polkadot Developer Support](/get-support/#support-channels), or report bugs in the tool's own GitHub repository.
    - **Polkadot Community Foundation (PCF)**: Operates Products Devnet (the `devnet` preset) and everything on it, including its chains, registries, and deployments, using open-source technology developed by Parity. PCF also publishes its own builds of the Polkadot App, including the Google Play app, and of Polkadot Desktop, and the `pad` tooling that publishes to Browse. Parity does not operate these services; report issues with them in PCF's [`products-devnet-issues` repository](https://github.com/Polkadot-Community-Foundation/products-devnet-issues) or ask in `#devnet-discussion` on the [Polkadot Discord server](https://discord.com/invite/eD4jMYbC5U).


## `no allowance set for account`

**Cause**: [Allowances](/apps/concepts/allowances/) are granted per account. This error means the account that actually signed the request has no allowance — almost always because the allowance was granted to a _different_ account than the one signing. Common ways this happens: you funded a dev key but signed with your phone account (or the reverse), or your Product derived its [per-app account](/apps/concepts/accounts/) under a different `productId` than the one you granted the allowance under (for example, running from `localhost`, which derives under `playground.dot`, versus a `<name>.dot.li` URL, which derives under `<name>.dot`).

**Resolution**:

1. Determine which account actually signs. A Product running inside a Host can read its product account address (SS58 and H160) through the [`signer`](/apps/product-sdk/signer/) package; surface it in your dev UI. See [Accounts and Signing](/apps/concepts/accounts/#see-the-signing-address).
2. Grant the allowance (or storage authorization) to _that_ account. See [Get TestNet Tokens](/apps/get-started/get-testnet-tokens/).
3. Keep the `productId` consistent between where you request the allowance and where you sign, so the same account is used throughout.

## The App Seems Frozen After an Action

**Cause**: Signing happens on your phone, and there is no push notification telling you the phone is waiting. After you trigger a signable action, the interface can look stuck while an approval prompt sits unopened in the Polkadot App.

**Resolution**: Open the Polkadot App and check for a pending approval. Approve or reject it there, and the flow continues. When building, show a non-blocking "check your phone" state after any signable action rather than a spinner that looks frozen. See [Sign and Submit Transactions](/apps/build/sign-and-submit/) for designing around cross-device signing latency.

## The Deploy Pauses for About a Minute

**Cause**: During `playground deploy`, there is a deliberate pause of about 60 seconds between reserving and finalizing your dotNS name. Most of that is the tooling waiting for the commitment to settle; the [dotNS](/apps/register-dot-domain/) contract itself requires only that the commitment be six seconds old. The two-step handshake prevents someone from front-running your name.

**Resolution**: Wait. The deploy is not stuck. The next approval appears in the Polkadot App once the window elapses.

## Short Names Are Not for Sale

**Cause**: Registering a name of eight characters or fewer fails with `Short names are not for sale`. The public registration path that `playground`, `pad`, and the dotNS CLI use sells only names of nine characters or more. The six-to-eight band is closed by a governance switch in `PopRules`, which is off by default, so [Proof of Personhood](/apps/concepts/identity/) does not open it. A name of five characters or fewer stays closed on this path even when the switch is on, because it is reserved for governance. Length is counted as written, so digits do not change which band a name falls in.

**Resolution**: Choose a name of nine characters or more. A name of six to eight characters is available as a personhood or device name, earned in the Polkadot App. See [Register a `.dot` Domain](/apps/register-dot-domain/#choose-a-name).

## The Name Is Already Registered

**Cause**: dotNS names are first come, first served.

**Resolution**: Choose a different name. Re-deploying a name you already own is fine and does not conflict.

## Uploads Are Rejected or `Host storage unavailable`

**Cause**: Two different problems share this symptom. Storing on the Bulletin Chain requires an explicit storage authorization on the signing account — without it, the store is rejected regardless of your token balance. Separately, `Host storage unavailable` means code that needs a Host is running outside one.

**Resolution**: Request a storage authorization for the signing account (see [Get TestNet Tokens](/apps/get-started/get-testnet-tokens/)), and confirm you granted it to the account that actually signs (see the allowance entry above). For `Host storage unavailable`, run your Product inside [Polkadot Desktop](/reference/apps/hosts/polkadot-desktop/), or use the SDK's dev and testing paths for out-of-Host development.

## The App Does Not Appear Right After Deploy

**Cause**: On-chain state takes a short time to propagate after the deploy transaction finalizes, and the web gateway resolves your name through an in-browser light client.

**Resolution**: Wait a few seconds and refresh. A `curl` or script against the gateway URL returns a generic gateway shell, not your app — open it in a real browser to see the resolved Product. If it still does not resolve after a minute, confirm the deploy finalized and check network status with the developer community.

## Connecting to a Chain Throws Outside a Host

**Cause**: The [`chain-client`](/apps/product-sdk/chain-client/) routes every connection through the Host and has no direct-WebSocket fallback, so it throws when no Host provider is present.

**Resolution**: Run your Product inside a Host. For out-of-Host development and tests, use the SDK's testing fakes rather than a live connection. See [Read On-Chain Data](/apps/build/read-chain-state/).
