Skip to main content

Making transactions

Advanced
Bitcoin
Tutorial

There are several different ways to interact with ckBTC:

  • Converting BTC to ckBTC
  • Converting ckBTC to BTC
  • Receiving ckBTC
  • Sending ckBTC
  • Viewing ckBTC transactions
  • Integrate ckBTC into your smart contract

Converting BTC to ckBTC

Converting ckBTC
  • Step 2: Sign in with your existing Internet Identity, or create one by selecting 'More options' > 'Create New'.

Converting ckBTC
  • Step 3: Select 'ckBTC' while on the 'Tokens' tab.

Converting ckBTC
  • Step 4: Click on 'Send' at the bottom of the screen.

Converting ckBTC
  • Step 5: Select 'Bitcoin', then send BTC to the displayed Bitcoin address.

Converting ckBTC

Since this is a real bitcoin transaction, the finality time will take about 1 hour and will be charged the Bitcoin network's transaction fees.

Converting ckBTC to BTC

Converting ckBTC
  • Step 2: Sign in with your existing Internet Identity, or create one by selecting 'More options' > 'Create New'.

Converting ckBTC
  • Step 3: Select 'ckBTC' while on the 'Tokens' tab.

Converting ckBTC
  • Step 4: Click on 'Send' at the bottom of the screen.

Converting ckBTC
  • Step 5: Insert your BTC address in the 'Destination' field, select 'Bitcoin' for the 'Network', then enter the amount to convert.

Converting ckBTC

Then select 'Continue' to submit the transaction.

Every step of converting BTC to ckBTC is decentralized and does not use any centralized intermediaries or bridges.

Issuing and redeeming ckBTC goes through KYT checks to ensure that tainted BTC does not enter the ICP network.

Transferring ckBTC to another account

You can transfer ckBTC to any wallet that supports ckBTC, such as the NNS dapp or Oisy wallet. Directions for the NNS dapp are shown below.

Transferring ckBTC
  • Step 2: Sign in with your existing Internet Identity, or create one by selecting 'More options' > 'Create New'.

Transferring ckBTC
  • Step 3: Select 'ckBTC' while on the 'Tokens' tab.

Transferring ckBTC
  • Step 4: Click on 'Send' at the bottom of the screen.

Transferring ckBTC
  • Step 5: Insert your ckBTC address in the 'Destination' field, select 'Internet Computer' for the 'Network', then enter the amount to send.

Transferring ckBTC

Receiving ckBTC

You can receive ckBTC in any wallet that supports ckBTC, such as the NNS dapp or Oisy wallet. Directions for the NNS dapp are shown below.

Receiving ckBTC
  • Step 2: From the 'Tokens' tab, select the QR code icon next to 'ckBTC'.

Receiving ckBTC
  • Step 3: Scan this QR code from a device that you'd like to send ckBTC from.

Receiving ckBTC

You can also copy the ckBTC address displayed under the QR code and provide this to a friend or third-party (like an exchange) to for them to send you ckBTC.

Converting ICP to ckBTC/BTC

To convert ICP into ckBTC or BTC, a decentralized exchange like ICPSwap must be used. There is no protocol for directly converting one to the other.

Viewing transaction history

To view transaction history for all ckBTC transactions on ICP, navigate to the Internet Computer Dashboard, then select the 'Bitcoin' dropdown menu in the top left corner, then select 'ckBTC transactions'.

ckBTC transactions

You can also go directly to Bitcoin transactions.

This will display the full history of all ckBTC transactions on ICP.

ckBTC transactions

You can also search for specific ckBTC transactions by address or transaction ID by selecting the 'Search' bar, then selecting 'I am searching for ckBTC' and inserting your address/transaction ID:

ckBTC transactions

How ckBTC transactions differ from BTC transactions

ckBTC transactions are quite different from BTC transactions:

  • Speed: ckBTC transactions can be completed with 1-2 second finality time, compared to the average time of 10 minutes to mine a Bitcoin block.

  • Cost: ckBTC transaction fees are negligible, costing less than a cent.

  • Fixed transaction fees: Transaction fees have a fixed cost, compared to BTC transaction fees that fluctuate based on the size of the transaction and the network's current load.

  • Smart contract integration: Smart contracts can programmatically hold and transfer ckBTC, enabling layer-2 applications to develop Bitcoin solutions. Bitcoin does not support such functionality.

Transaction fees

ckBTC transaction fees are set to 0.0000001 ckBTC, which is equivalent to less than a cent or 10 satoshis.

BTC transaction fees are incurred when converting BTC to ckBTC or vice versa, along with a KYT fee.