# BitTap Documentation

## bittap

- [About BitTap](https://doc.bittap.org/about-bittap.md): Decentralized solutions on Taproot Assets and Lightning Network
- [Custodial vs. Non-Custodial](https://doc.bittap.org/wallet-product/custodial-vs.-non-custodial.md)
- [Off-Chain Proof](https://doc.bittap.org/wallet-product/off-chain-proof.md)
- [Get Started](https://doc.bittap.org/wallet-product/get-started.md): Now ready to use BitTap wallet playing with Taproot Assets in a truly decentralized way!
- [Privacy Policy](https://doc.bittap.org/wallet-product/privacy-policy.md)
- [Overview](https://doc.bittap.org/dex-product/overview.md): Welcome to the BitTap Decentralized MarketPlace for Taproot Assets.
- [Overview](https://doc.bittap.org/developer-guides/overview.md): Welcome to the developer documentation for BitTap Wallet.
- [API Reference](https://doc.bittap.org/developer-guides/api-reference.md)
- [CreateWallet](https://doc.bittap.org/developer-guides/api-reference/createwallet.md): Create a wallet for the end user.
- [NewAddr](https://doc.bittap.org/developer-guides/api-reference/newaddr.md): Create a new Taproot Assets address.
- [DecodeAddr](https://doc.bittap.org/developer-guides/api-reference/decodeaddr.md): Decode a Taproot Assets address.
- [QueryAddrs](https://doc.bittap.org/developer-guides/api-reference/queryaddrs.md): Query all created Taproot Assets addresses in a wallet.
- [ImportAsset](https://doc.bittap.org/developer-guides/api-reference/importasset.md): Import a Taproot Asset from other universe.
- [QueryAssetStat](https://doc.bittap.org/developer-guides/api-reference/queryassetstat.md): Query all Taproot Assets metadata in Bittapd without regarding end users.
- [ListAssetHistory](https://doc.bittap.org/developer-guides/api-reference/listassethistory.md): List all Taproot Assets and BTC transaction history in a wallet.
- [Estimate-tx-fee](https://doc.bittap.org/developer-guides/api-reference/estimate-tx-fee.md): Estimate the transaction fee for current layer 1 or layer 2 asset transfer.
- [GetAssetBalance](https://doc.bittap.org/developer-guides/api-reference/getassetbalance.md): Get all Taproot Assets balance in a wallet.
- [GetBtcBalance](https://doc.bittap.org/developer-guides/api-reference/getbtcbalance.md): Get BTC balance in a wallet.
- [SendAsset](https://doc.bittap.org/developer-guides/api-reference/sendasset.md): Sending assets requires several rounds of communication between wallet and bittapd, because bittapd needs end users to sign twice.
- [TransferAsset](https://doc.bittap.org/developer-guides/api-reference/sendasset/transferasset.md): First step to transfer Taproot Assets to an address. Virtual psbts for active assets and passive assets will be returned in response for user's first time sign.
- [AnchorVirtualPsbt](https://doc.bittap.org/developer-guides/api-reference/sendasset/anchorvirtualpsbt.md): Second step to transfer Taproot Assets to an address. This will accept the user's signed virtual psbt to verify, and if valid, return anchored psbt for another signature.
- [PublishTransfer](https://doc.bittap.org/developer-guides/api-reference/sendasset/publishtransfer.md): Third step to transfer Taproot Assets to an address. This will accept the user's signed anchor psbt to broadcast to BTC network, if confirmed send proof to receiver too.
- [SendBtc](https://doc.bittap.org/developer-guides/api-reference/sendbtc.md): Sending BTC requires 2 rounds of communication between wallet and bittapd, because bittapd needs end users to sign only once.
- [TransferBtc](https://doc.bittap.org/developer-guides/api-reference/sendbtc/transferbtc.md): First step to transfer BTC to an address. Psbt will be returned in response for user's sign.
- [PublishTransferBtc](https://doc.bittap.org/developer-guides/api-reference/sendbtc/publishtransferbtc.md): Second step to transfer BTC to an address. This will accept the user's signed psbt to broadcast in BTC network.
- [JS SDK](https://doc.bittap.org/developer-guides/js-sdk.md): JS toolkit as a DApp-connected wallet, allowing your app to quickly access the plugin wallet
