Ducat vaults and transactions
Build and inspect every vault action end to end.
Follow these 10 lessons in order, or choose the topic you need. Each lesson combines an explanation, a worked example and practice inside the Guild.
Open a vault
The client fetches protocol and oracle data, reserves issuance capacity, builds and signs PSBTs, and submits the request for Guardian validation and co-signing.
Open lessonDeposit and withdraw
Collateral changes consume the current vault UTXO and create a successor while validation enforces allowed value and ratio transitions.
Open lessonBorrow and repay
Issuance or burn activity is paired with a vault state update so UNIT changes reconcile with the vault differential.
Open lessonTwo-transaction actions
Open, borrow, and repay use an issue-or-burn transaction plus a vault transaction connected so package structure and fees matter.
Open lessonSingle-transaction actions
Deposit, withdraw, repo, and trim update vault state without the separate issuance or burn pattern.
Open lessonPSBT manifests and signing inputs
The client prepares transaction context while signing code derives the precise sighash and Taproot context that each signer must authorize.
Open lessonVault metadata versus enforcement
OP_RETURN records help reconstruct state, but spend authorization comes from committed Script paths and signatures rather than metadata alone.
Open lessonFees, signature checks, and control blocks
Ducat estimates transaction weight from inputs, outputs, witnesses, signatures, price commitments, and taptree depth.
Open lessonConfirmations and lifecycle state
Validator and client behavior must read environment-specific confirmation and state rules instead of teaching a timeless hard-coded number.
Open lessonCPFP for Ducat transaction pairs
Package feerate explains how a fee-paying vault child can make a zero-fee issue or burn parent mineable.
Open lesson