Skip to main content
The vault creation wizard guides you through four steps: setting your heartbeat parameters, defining your heirs, optionally funding the vault, and confirming everything on-chain. Each step validates your input before allowing you to proceed.
You must have a connected Stacks wallet before starting. See wallet setup if you haven’t connected yet.

Overview of the wizard

StepNameWhat you configure
1HeartbeatHeartbeat interval and grace period
2HeirsBeneficiary addresses and percentage splits
3DepositInitial sBTC and/or USDCx funding (optional)
4ReviewConfirm parameters and submit the transaction

Step 1 — Heartbeat parameters

The first step sets two time windows that together control when your heirs can claim.

Heartbeat interval

The heartbeat interval is how often you must send a heartbeat transaction to prove you are still in control of the vault. If this window passes without a heartbeat, the vault enters the grace state.
  • Range: 1–365 days
  • Use the slider or click a preset button (30d, 60d, 90d, 180d, 365d)
  • Default: 90 days

Grace period

The grace period is the buffer after a missed heartbeat. The vault becomes claimable only after both the heartbeat interval and the grace period have elapsed without a heartbeat.
  • Range: 1–90 days (slider maximum)
  • Use the slider or click a preset button (7d, 14d, 30d, 60d, 90d)
  • Default: 30 days

Total deadline

The app displays the combined deadline — heartbeat interval + grace period. This is the maximum time you can be unreachable before your heirs can claim.
Choose an interval that fits your normal activity patterns. A 90-day interval with a 30-day grace period means your heirs cannot claim for at least 120 days of complete inactivity. Shorter intervals require more frequent check-ins but protect your heirs sooner.
Recommended starting values for most users:
Use caseHeartbeat intervalGrace period
Active daily users30 days14 days
Typical long-term holder90 days30 days
Long-term storage vault180 days60 days
The heartbeat interval and grace period are fixed at vault creation and cannot be changed for the life of the vault. Choose values you are confident you can maintain.

Step 2 — Heirs

The heirs step defines who receives your vault assets and in what proportion.

Adding beneficiaries

Each heir entry has three fields:
  • Label — A human-readable name for your reference (e.g., “My Son”, “Partner”). Maximum 50 characters. Not stored on-chain.
  • Stacks address — The heir’s Stacks principal address (SP... for mainnet, ST... for testnet). Maximum 128 characters.
  • Share % — The percentage of the vault this heir receives. Entered as a whole number (0–100).
Click Add Heir to add more beneficiaries. You can add up to 10 heirs total.

Percentage splits

All heir percentages must sum to exactly 100%. The app shows a running total badge that turns:
  • Green when the total equals 100% — you can proceed
  • Yellow when the total is below 100%
  • Red when the total exceeds 100%
Percentages are stored on-chain as basis points (100% = 10,000 bps). The app converts between the two automatically — enter plain percentages.

Validation rules

  • At least one heir is required
  • Every heir must have a non-empty Stacks address
  • Total split must equal exactly 100%
  • Maximum 10 heirs per vault
  • You cannot proceed to the next step until all rules pass

Guardian (optional)

Below the heirs list, you can optionally set a guardian address. A guardian is a trusted party who can call guardian-pause once during the grace period to extend the time before heirs can claim — giving you or your family more time to react to an unexpected absence. Leave the guardian field empty if you do not need this feature. See guardian system for full details.

Step 3 — Deposit

The deposit step lets you fund the vault at creation time. This step is optional — you can skip it and add funds from the dashboard later.

sBTC

Enter a BTC-denominated amount to deposit. The app converts it to satoshis internally (multiplies by 10⁸). Quick preset buttons are available: 0.001, 0.01, 0.05, 0.1 sBTC, or skip.

USDCx

Enter a USD-denominated amount. The app converts it to micro-units internally (multiplies by 10⁶). Quick preset buttons are available: 100,100, 500, 1,000,1,000, 5,000, or skip.

Viewing your balances

Your current sBTC and USDCx wallet balances are fetched from the Hiro API using useTokenBalances. If you don’t yet have either token, see the quickstart for instructions on getting testnet tokens.
You can deposit sBTC, USDCx, both, or neither at creation time. A vault with no balance is still valid — heirs can claim a zero balance if the vault becomes claimable.

Step 4 — Review and confirm

The review step shows a summary of all your configured parameters before submitting. What is displayed:
  • Heartbeat interval, grace period, and total deadline
  • Deposit amounts for sBTC and USDCx
  • All heirs with their label, truncated address, percentage, and calculated token share
  • Guardian address (if set)
Review everything carefully, then click Create Vault.

Transaction submission

After you click Create Vault, the app progresses through a sequence of states displayed on screen:
1

Creating vault

The app calls createVaultOnChain(), which submits a create-vault transaction to the Stacks network. Your wallet extension opens and asks you to confirm the transaction. Approve it.
2

Waiting for confirmation

If you entered deposit amounts, the app polls the contract every 5 seconds using getVaultStatus() to detect when the vault creation transaction has confirmed on-chain. This step is skipped if you chose no deposits.
3

Depositing sBTC (if applicable)

Once the vault is confirmed, the app submits the deposit-sbtc transaction. Confirm it in your wallet.
4

Depositing USDCx (if applicable)

The app submits the deposit-usdcx transaction. Confirm it in your wallet.
5

Complete

A success screen appears. The app redirects you to the dashboard after 3 seconds.

Transaction hashes

During and after submission, the app displays transaction hash links. Click View on Explorer to open the transaction in the Stacks Explorer and monitor confirmation status.
Do not close the browser tab while transactions are pending. If you navigate away during the deposit phase, your vault will still be created but the deposits will not have been submitted. You can deposit from the dashboard later.

After vault creation

Once the wizard completes, you are redirected to the Dashboard, where you can:
  • View the real-time countdown to your next required heartbeat
  • See the sBTC and USDCx balances locked in the vault
  • Send heartbeats to reset the timer
  • Monitor your heirs’ claim status

Adding more funds after creation

You are not limited to the funds you deposit during the wizard. From the dashboard, you can deposit additional sBTC or USDCx at any time while the vault is in the active or grace state. The process calls the same deposit-sbtc and deposit-usdcx contract functions.