Skip to main content

Introduction to UTXO Manager

The UTXO Manager in the OP_NET ecosystem simplifies managing Bitcoin's Unspent Transaction Outputs (UTXOs). It abstracts the complexities of fetching, optimizing, and managing UTXOs for wallets and smart contracts, allowing developers to interact efficiently with the UTXO model.


What is a UTXO?

In Bitcoin, a UTXO (Unspent Transaction Output) is an output of a blockchain transaction that has not yet been spent. UTXOs form the foundation of Bitcoin’s transaction model. Each UTXO represents a certain amount of Bitcoin locked in an output, which can later be used as an input for another transaction.

Key Attributes of a UTXO
  • Transaction ID: Identifies the transaction that created the UTXO.
  • Output Index: The index of the UTXO within the transaction.
  • Value: The amount of Bitcoin the UTXO represents.
  • ScriptPubKey: The locking script that specifies the conditions under which the UTXO can be spent.

Features of the UTXO Manager

Core Capabilities

FeatureDescription
Fetch UTXOsRetrieve all UTXOs for a given address.
Fetch UTXOs for AmountRetrieve UTXOs that satisfy a specific amount, useful for transaction creation.
Optimize UTXOsOptimize UTXO selection to minimize transaction fees.
Merge Pending UTXOsCombine UTXOs that are pending confirmation.
Filter Spent UTXOsFilter out already spent UTXOs from the results.

Integration

The UTXO Manager is seamlessly integrated into the JSONRpcProvider as part of the OP_NET ecosystem. This allows for direct interaction with Bitcoin UTXOs in both single and batch operations.


Best Practices

  • Always filter out spent UTXOs to ensure accurate results.
  • Use UTXO optimization to reduce transaction fees, especially when dealing with multiple inputs.
  • Fetch UTXOs for a specific amount to streamline transaction creation.

What’s Next?

Explore the following guides to dive deeper into the UTXO Manager: