SolstackDocs

Errors & states

Transaction lifecycle

Every action that writes to the chain goes through the same sequence of states.

Normal flow

  1. Building: your browser turns the form into Solana instructions. Nothing has been sent yet.
  2. Simulating: Solstack asks an RPC node to dry-run the transaction, which catches most errors before you sign or spend anything.
  3. Awaiting approval: your wallet opens with the transaction, which is not yet signed. Rejecting it here has no effect.
  4. Submitted: your wallet returns the signed transaction and Solstack sends it through the RPC node for the selected network. A transaction signature is shown. (Wallets that cannot sign without sending submit it themselves.)
  5. Confirmed: a supermajority of validators has voted on the block. This is sufficient for most purposes.
  6. Finalized: the block has 31 or more confirmations and cannot be rolled back. Solstack waits for finalization on irreversible actions.

Where it can go wrong

Rejected in walletYou clicked Cancel or Reject. No fee is charged and nothing changes. Run the action again when ready.
Simulation failedThe dry run returned an error (see Wallet & signing errors). Nothing was signed or spent.
Expired / blockhash not foundThe approval took longer than the blockhash is valid, about 60–90 seconds. The transaction can no longer land; run the action again to get a fresh blockhash.
DroppedThe transaction was submitted but never included in a block, usually because of congestion. Run it again, with a priority fee if the tool offers one.
Failed on-chainThe transaction was processed but a program returned an error. The network fee is still charged, and the error code explains the cause.
A transaction signature does not mean the transaction succeeded. Wait for the confirmed or finalized status.
NextWallet & signing errors →
Your keys stay in your wallet · every job starts with your approval · fees shown before you sign← Back to solstack.xyz