Skip to main content
This flow covers signer-governed treasury payout proposals. The lifecycle is: create proposal record, deploy ProposalCovenant, collect signer approvals, then execute payout.
1

Open the vault

Navigate to Vaults → [your vault] → Governance → New Proposal.
2

Fill in the proposal

  • Recipient: BCH address that will receive the funds - Amount: BCH amount requested - Reason: rationale and supporting context
3

Submit off-chain

Click Create Proposal. This calls POST /api/vaults/:vaultId/proposals and creates the database record with status: pending. No on-chain transaction yet.
4

Create on-chain proposal

Click Fund Proposal On-chain. The app calls POST /api/proposals/:id/create-onchain, which deploys the ProposalCovenant and returns a wcTransaction. Sign it in your wallet to lock the proposal’s payout amount in the covenant.
5

Confirm

After the wallet broadcasts, the app calls POST /api/proposals/:id/confirm-create. The proposal status becomes pending and signers are notified.

Approval Flow

Each of the 3 vault signers individually approves the proposal by calling POST /api/proposals/:id/approve-onchain (or clicking Approve in the UI). When 2 of 3 sign, the proposal moves to approved and is ready for execution. See Voting on Proposals for the approval and execution guide.