SOLSTACKDocs

Errors & states

What happens when you click a button

Every write action moves through the same states. Knowing them makes almost every error self-explanatory.

The happy path

  1. Building — your browser turns the form into Solana instructions. Nothing has left your machine.
  2. Simulating — Solstack asks an RPC node to dry-run the transaction. This catches most errors before you sign or spend anything.
  3. Awaiting approval — your wallet opens. The transaction is real now but not yet signed. Reject here and nothing happens.
  4. Submitted — the signed transaction is sent to an RPC node and enters the network. You'll see a signature.
  5. Confirmed — a supermajority of validators have voted on the block. Safe to rely on for most purposes.
  6. Finalized — the block is 31+ confirmations deep and cannot be rolled back. Solstack waits for this on irreversible actions.

Where it can go wrong

Rejected in walletYou clicked Cancel / Reject. No fee, no effect. Just re-run when ready.
Simulation failedThe dry-run hit an error — see Wallet & signing errors. Nothing was signed or spent.
Expired / blockhash not foundYou took too long to approve (~60–90s). The transaction is dead — re-run to get a fresh blockhash.
DroppedSubmitted but never picked up, usually during congestion. Re-run; consider a priority fee.
Failed on-chainIt ran but a program returned an error. A fee was still charged. The error code tells you why.
A signature appearing does not mean success. Always wait for the confirmed/finalized state — Solstack shows it, and Transaction Inspector can verify any signature after the fact.
NextWallet & signing errors