User Flow
Complete User Journey
This diagram shows the entire user flow from creating a boost request to receiving ckBTC, including all actors and timeframes.
Step-by-Step User Experience
Phase 1: Request Creation
What the user does:
Decides amount and fee: User wants to convert 0.01 BTC and is willing to pay up to 2% fee for instant service
Creates boost request: Calls
registerBoostRequest(1000000, 2.0)
via wallet or dAppReceives Bitcoin address: Gets a unique address like
bc1q7x8k2...
where they need to send Bitcoin
What happens behind the scenes:
Protocol generates a unique subaccount for this request
Bitcoin address is created specifically for this request (fund isolation)
Request enters
pending
status and becomes visible to boostersUnique request ID is assigned for tracking
Phase 2: Market Discovery (0-5 minutes)
Two possible paths from here:
Path A: Booster Available (Happy Path)
What happens:
Booster monitoring: Active boosters continuously scan pending requests
Request evaluation: Booster evaluates:
Profitability: X% fee on 0.01 BTC
Risk assessment: Amount size, user history, current market conditions
Available liquidity: Does booster have 0.01 ckBTC available?
Instant acceptance: If profitable and low-risk, booster accepts within seconds
Immediate ckBTC transfer: User receives 0.98 ckBTC (0.01 BTC minus ~2% fee) instantly
Path B: No Booster Available (Fallback )
What happens:
Waiting period: Request sits in
pending
statusUser decision: After some time, user can trigger direct minting
Fallback activation: User calls
triggerMintingForMyBoostRequest()
Direct processing: Protocol handles minting directly without booster2 wj
Phase 3: Bitcoin Transaction (User action required)
What the user does:
Send Bitcoin: User sends exactly 0.01 BTC to the provided address
Can use any Bitcoin wallet
Must send the exact amount requested
Should use appropriate fee for timely confirmation
What happens behind the scenes:
Bitcoin transaction broadcasts to the network
Transaction appears in mempool (unconfirmed)
ckBTC minter begins monitoring this specific address
Protocol tracks the incoming transaction
Timeline: Immediate broadcast, 10-60 minutes for confirmations
Phase 4A: Instant Liquidity (Booster Path)
What the user experiences:
Immediate notification: "ckBTC received! Transaction complete."
Balance update: Wallet shows new ckBTC balance
Ready to use: Can immediately use ckBTC in DeFi, transfers, etc.
What happens behind the scenes:
ICRC-1 transfer: Booster's ckBTC is transferred to user's principal
Booster balance: Booster's available balance decreases
Status update: Request status changes to
boosted
Fee calculation: User pays agreed fee (e.g., 1.5% actual vs 2% max)
Phase 4B: Direct Minting (Fallback Path)
What the user experiences:
Minting notification: "Bitcoin received, minting ckBTC..."
Progress updates: Regular status updates during minting process
Completion: "ckBTC minted and transferred!"
What happens behind the scenes:
Bitcoin confirmation: Wait for sufficient Bitcoin confirmations (usually 6)
Minter interaction: Protocol calls ckBTC minter to convert BTC to ckBTC
Direct transfer: Minted ckBTC goes directly to user (no booster involved)
No additional fees: User only pays standard ckBTC minting fees
Phase 5: Fund Reclamation (Background - Booster Path Only)
What happens (user doesn't see this):
Bitcoin monitoring: Protocol monitors for Bitcoin deposit confirmation
Minting trigger: Once Bitcoin arrives, booster can trigger fund reclamation
Two-phase process:
Phase 1: Call ckBTC minter to mint ckBTC from deposited Bitcoin
Phase 2: Transfer minted ckBTC back to booster's pool
Profit realization: Booster receives original amount + earned fees
Pool replenishment: Booster's available balance is restored + profit
Last updated