> ## Documentation Index
> Fetch the complete documentation index at: https://help.bitcoincontrolcenter.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Add by xpub or descriptor

> Track any single-signature wallet from its public key, without connecting a device.

Use this for any single-signature wallet. For example, a software wallet, a wallet the scan didn't find, or a wallet with no balance yet.

It's an **Advanced** option. You'll need to sign a message yourself to verify the wallet.

## Find it

Select **Add Account**. Scroll down. Open **Manually Verify Your Self-Custodial Bitcoin Holdings**. Select **Verify with Manual Signing**.

![Add Account screen with the Advanced manual signing section open](https://mintcdn.com/hoseki-corp/UfUbkRUza9CJFqpH/images/accounts-add-advanced.png?fit=max\&auto=format\&n=UfUbkRUza9CJFqpH\&q=85\&s=c9b1689238b0879fa28e842c136755a8)

The Advanced option is below the account tiles.

## Add the wallet

1. Enter a **Display name**.
2. Paste an **account descriptor or extended public key**.
3. If you pasted an `xpub`, pick the **script type**.
4. Select **Add Account**.

![Advanced form with Display name, extended public key, and script type options](https://mintcdn.com/hoseki-corp/UfUbkRUza9CJFqpH/images/accounts-xpub-form.png?fit=max\&auto=format\&n=UfUbkRUza9CJFqpH\&q=85\&s=52933371b05e6594cb45ae9fb16d177b)

Paste a descriptor or xpub. Pick the script type for an xpub.

### What you can paste

| Input | Example start | Script type |
| - | - | - |
| Descriptor (preferred) | `wpkh(`, `sh(wpkh(`, `pkh(`, `tr(` | Included |
| `zpub` | `zpub6…` | Native SegWit |
| `ypub` | `ypub6…` | Nested SegWit |
| `xpub` | `xpub6…` | You pick |

> [!TIP]
>
> Use a descriptor if you can. It includes the script type, so the balance is right the first time.

### Which script type?

Match the start of your receive addresses.

| Your addresses start with | Pick |
| - | - |
| `1` | Legacy (P2PKH) |
| `3` | Nested SegWit (P2SH) |
| `bc1q` | Native SegWit (P2WPKH) |
| `bc1p` | Taproot (P2TR) |

Balance is zero? You probably picked the wrong type. Go back and change it.

## Verify it

1. Copy the **Address** and **Message**.
2. Sign the message with that address in your wallet software. In Sparrow and Electrum, use **Sign/Verify Message**.
3. Paste the signature. Select **Verify**.

See [Verify ownership](https://help.bitcoincontrolcenter.com/accounts/verify-ownership.md) for details.

## Limits

* Single-signature only. For multisig, see [Multisig](https://help.bitcoincontrolcenter.com/accounts/multisig.md).
* Mainnet only on packaged apps.
* Never paste an `xprv` or a seed phrase. Control Center only needs public keys.


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