Kaspa One Stop

In brief

Transaction evidence moves through layers: wallet intent, node or mempool response, block inclusion, virtual processing, and accepted UTXO effects.

What this page explains#

Accepted evidence is the boundary between transaction intent and consensus-visible consequence. This page sits in Transactions, UTXO, Fees, And Mempool. It gives the topic a plain-language handle first, then shows the working idea, the mechanism, the source trail, and any limits that still matter. This category follows a transaction from ownership model to structure, signing, validation, mempool admission, template selection, and accepted-state evidence. The main danger it prevents is collapsing all transaction states into one word.

The writing follows a simple Kaspa documentation pattern: answer the practical question first, then link outward for details. The closest public sources for this page are RK-VIRTUAL-PIPELINE, RK-UTXO-DIFF, RK-ACCEPTANCE-DATA, KIP-0015, RK-INDEXES. Local notes can help choose what to explain, but public-facing references resolve to upstream websites, repositories, papers, release pages, or docs.

How to think about it#

The practical model starts by naming the layer that owns the topic: wallet use, node operation, consensus, transaction validation, Toccata script behavior, tooling, or research. From there, the page shows which public source can support the explanation and where the explanation becomes incomplete.

For Accepted Transaction Evidence, the model is built around these anchors: accepted data comes from virtual selected-parent chain changes; accepted transaction IDs are not the same as mempool visibility; UTXO diffs create the next spendable state; accepted transaction IDs, accepted versions, and accepting block data are review surfaces; indexers organize evidence but must replay and recover correctly. This model is useful, but it does not encode every constant, branch, error type, or edge case. Those details belong in the source path and the source notes.

How it works#

1. accepted data comes from virtual selected-parent chain changes. Virtual state is the bridge from ordered consensus consequences into the state surfaces that tools can inspect. Mempool visibility says a node is considering a transaction; accepted evidence says the transaction was incorporated through consensus processing. UTXO diffs, accepting data, and indexer replay are the review trail for applications that need durable state.

2. accepted transaction IDs are not the same as mempool visibility. Mempool and relay behavior describe what a node is willing to hold, replace, forward, or package; they are not final acceptance. Block templates are candidate work for miners, and they can change as node state or policy changes. The guide names each stage separately: built, signed, submitted, admitted, relayed, templated, mined, and accepted.

3. UTXO diffs create the next spendable state. A UTXO explanation begins with outputs that can later be spent. Inputs do not draw from an account balance; they reference earlier outputs by outpoint and provide the data needed to authorize the spend. This is why wallet balance, transaction construction, validation, and covenant state all need the same ownership vocabulary.

4. accepted transaction IDs, accepted versions, and accepting block data are review surfaces. Transaction structure is the field map other layers depend on. Version, inputs, outputs, lock time, subnetwork ID, gas, payload, storage mass, and serialization all affect how validation, hashing, signing, RPC, wallets, and indexers interpret the object. The page therefore treats each field as a commitment surface rather than a display detail.

5. indexers organize evidence but must replay and recover correctly. Developer integration pages explain an interface by naming the source object behind it. API, RPC, wRPC, SDK, wallet, and indexer surfaces are useful only when they preserve the fields and evidence that the protocol layer actually defines. Accepted-state evidence, replay behavior, schema choices, and endpoint disagreement must be checked separately.

This mechanism section follows a transaction through construction, identity, signing, validation, mempool policy, block templates, and accepted evidence. The stage must be named before the claim is reused.

How to check it#

StepCheckEvidence gate
1Check accepted data comes from virtual selected-parent chain changes.Use RK-VIRTUAL-PIPELINE, RK-UTXO-DIFF, RK-ACCEPTANCE-DATA; name the stage: built, signed, validated, admitted, templated, mined, or accepted.
2Check accepted transaction IDs are not the same as mempool visibility.Use RK-VIRTUAL-PIPELINE, RK-UTXO-DIFF, RK-ACCEPTANCE-DATA; name the stage: built, signed, validated, admitted, templated, mined, or accepted.
3Check UTXO diffs create the next spendable state.Use RK-VIRTUAL-PIPELINE, RK-UTXO-DIFF, RK-ACCEPTANCE-DATA; name the stage: built, signed, validated, admitted, templated, mined, or accepted.
4Check accepted transaction IDs, accepted versions, and accepting block data are review surfaces.Use RK-VIRTUAL-PIPELINE, RK-UTXO-DIFF, RK-ACCEPTANCE-DATA; name the stage: built, signed, validated, admitted, templated, mined, or accepted.
5Check indexers organize evidence but must replay and recover correctly.Use RK-VIRTUAL-PIPELINE, RK-UTXO-DIFF, RK-ACCEPTANCE-DATA; name the stage: built, signed, validated, admitted, templated, mined, or accepted.

When using this page for a transaction claim, name the stage precisely: built, signed, validated, admitted to a mempool, included in a template, mined, accepted, or reflected in a UTXO change. Each stage has a different evidence surface and should not be collapsed into a single success word.

  • 09-block-templates
  • transactions-utxo-mempool
  • 11-rpc-and-indexer-representations
Source-linkedReviewed 2026-07-09 · 6 public sourcesEvidence and sources
Evidence and sources6 public sources · reviewed 2026-07-09
Rusty Kaspa Acceptance DataRusty Kaspa source
github.com/kaspanet/rusty-kaspa/blob/78257f273a26c4be085bab0f79437dee99ca8835/consensus/src/pipeline/virtual_processor/processor.rsgithub.com/kaspanet/rusty-kaspa/blob/78257f273a26c4be085bab0f79437dee99ca8835/consensus/core/src/acceptance_data.rsgithub.com/kaspanet/rusty-kaspa/blob/78257f273a26c4be085bab0f79437dee99ca8835/consensus/src/model/stores/acceptance_data.rs
Technical details

Reference key: RK-ACCEPTANCE-DATA

Recheck this public source before relying on exact current details.