For the complete documentation index, see llms.txt. This page is also available as Markdown.

Minting CBTC

This guide covers how to mint CBTC (Canton Bitcoin) by depositing native Bitcoin. CBTC is minted via the BitSafe Attestor Network, a decentralized network that monitors Bitcoin deposits and automatically mints CBTC to your Canton party. You do not need to run an attestor yourself.

Integration Options

You can mint CBTC either through the BitSafe web application (no code required) or programmatically using the cbtc-lib Rust library.

  • Web Application: Use the BitSafe app to initiate deposits and monitor minting status

  • cbtc-lib (Rust): A library of helper functions for minting, burning, and transferring CBTC on Canton. See cbtc-lib

For full installation instructions, environment configuration, and code examples, see the cbtc-lib README on GitHub.

Prerequisites

  • A Bitcoin wallet that supports Taproot (P2TR) addresses

  • A Canton Network participant node

  • Sufficient BTC for the deposit plus network fees

  • A valid credential issued by your account manager

  • For programmatic minting: the CBTC Minting App DAR files installed on your participant node. See the cbtc-lib Installation Guide

Minting Flow

  1. Step 1: Create a Deposit Account — Use the BitSafe app or cbtc-lib's mint_redeem::mint::create_deposit_account() to create a deposit account. You will receive a unique BTC deposit address (Taproot/P2TR).

  2. Step 2: Send Bitcoin — Send BTC to the provided deposit address from your Bitcoin wallet.

  3. Step 3: Wait for Confirmations — The BitSafe Attestor Network monitors your deposit address and waits for 6+ Bitcoin block confirmations.

  4. Step 4: Automatic Minting — Once confirmations are received, the attestor network verifies the deposit and automatically mints the equivalent CBTC to your Canton party. No action is required from you at this step.

  5. Step 5: Verify Balance — Check your CBTC balance on your Canton participant node.

Environment Configuration

Configure your environment to point to the correct BitSafe API:

Environment

BITSAFE_API_URL

Devnet

https://api.devnet.bitsafe.finance

Testnet

https://api.testnet.bitsafe.finance

Mainnet

https://api.mainnet.bitsafe.finance

Developer Resources

Important Notes

  • Each CBTC is backed 1:1 by Bitcoin held in decentralized custody

  • The minting process typically completes within minutes after 6 Bitcoin confirmations

  • You do not need to run an attestor. The BitSafe Attestor Network handles all verification and minting automatically

  • Deposits are subject to per-account limits - 0.0001 BTC minimum and 5 BTC maximum by default, adjustable on request. See CBTC Minting and Burning for details

Last updated