Skip to main content

VTXOs

Virtual Transaction Outputs (VTXOs) behave like Bitcoin UTXOs but execute offchain:
  • Offchain execution - Instant transactions without waiting for block confirmation
  • Onchain settlement - Backed by presigned Bitcoin transactions publishable at any time
  • Server co-signing - Server provides preconfirmations but never controls funds

Learn more about VTXOs and their security model

Script compatibility and path rules

Arkade executes standard Bitcoin Script semantics inside VTXOs, so scripts that work onchain can be executed offchain. There are two protocol rules for spending paths:
  • Collaborative path (offchain, instant) must include the server pubkey so the operator can co-sign.
  • Unilateral path (onchain, timelocked) must include a CSV Exit Delay using or exceeding the value from getInfo(). The server signature is not required.
CSV (relative timelocks) can only be used for unilateral exit paths. For collaborative paths, you MUST use CLTV (absolute timelocks).

Timelocks

The SDK provides helpers for common patterns:

Input/output structure

Inputs specify which VTXO and spending path:
Outputs specify destinations:

Two-phase transaction flow

Arkade uses a two-phase protocol:
  1. SubmitTx - Client submits signed transaction + unsigned checkpoints → Server validates, co-signs, and returns partially signed checkpoints
  2. FinalizeTx - Client completes checkpoint signatures → Transaction receives preconfirmation status

Deep dive into the offchain execution workflow

PSBTs and the Transaction class

You can craft a classic PSBT using @scure/btc-signer. When decoding Arkade PSBTs, pass { allowUnknown: true } to preserve Arkade-specific fields:
We strongly recommend using the SDK’s Transaction class instead. It matches @scure/btc-signer 1:1, so the same API calls (and { allowUnknown: true }) work:

Next steps

Lightning swaps

Integrate Lightning Network

Spilman channels

Build payment channels

Experimental contracts

Advanced contract patterns

API reference

Full SDK documentation