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

# Bitcoin Wallets

> [card] Recommended: JavaScript SDK with React Hooks
>
> For new React apps, we recommend the JavaScript SDK with React Hooks (`@dynamic-labs-sdk/react-hooks`) instead of the legacy React SDK documented here. The JS SDK comes with many benefits such as a much smaller bundle size and other optimizations. Use the [React quickstart (JavaScript SDK)](https://docs.dynamic.xyz/docs/javascript/reference/react-quickstart.md) to get started.

We covered how to access wallets in the [Accessing Wallets](https://docs.dynamic.xyz/docs/react/wallets/using-wallets/accessing-wallets.md) section. Bitcoin wallets have different capabilities and requirements than EVM wallets (for example, multiple address types like payment and ordinal addresses), so we cover Bitcoin-specific behavior here.

This is because Bitcoin wallets have different capabilities and requirements. For example, Bitcoin wallets can have multiple addresses associated with them, like payment and ordinal addresses.

## Checking if a wallet is a Bitcoin wallet

```tsx theme={"system"}
      import { isBitcoinWallet } from '@dynamic-labs/bitcoin';

      if (!isBitcoinWallet(wallet)) {
        throw new Error('This wallet is not a Bitcoin wallet');
      }

      const result = await wallet.sendBitcoin({
        amount: 100000000n,
        recipientAddress: 'SOME-ADDRESS',
      });
```

## What is a satoshi?

This smallest unit allows for transactions involving very small amounts of bitcoin,
facilitating microtransactions and improving the granularity of payments in the Bitcoin network.

```
1 Bitcoin = 100,000,000 Satoshis
```

## What is a PSBT?

A partially signed bitcoin transaction (PSBT) is a standard for transactions that have not fully signed.
This allows different participants with different keys/signers to sign a transaction without revealing their private keys to others.
Multi-sig wallets utilize these. This allows for a multi-step transaction process which is both safer and more efficient.

## Examples

We've included a few examples of how to use the Bitcoin wallet connector in this section:

* [Send a transaction](https://docs.dynamic.xyz/docs/react/wallets/using-wallets/bitcoin/send-a-transaction.md)
* [Send a raw transaction](https://docs.dynamic.xyz/docs/react/wallets/using-wallets/bitcoin/send-raw-transaction.md)
* [Sign a message](https://docs.dynamic.xyz/docs/react/wallets/using-wallets/bitcoin/sign-a-message.md)
* [Sign a PSBT](https://docs.dynamic.xyz/docs/react/wallets/using-wallets/bitcoin/sign-a-psbt.md)


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