I Got a Green Tick. But What Just Happened?

Published: (May 19, 2026 at 04:16 PM EDT)
4 min read
Source: Dev.to

Source: Dev.to

Overview

The first time I got a confirmed transaction on devnet, I felt great—for about 10 seconds—then realized I had no idea what actually just happened. I had been treating transactions like a black box: type address, type amount, hit send, done. That approach breaks the moment something goes wrong or when you try to build anything beyond a basic transfer.

I dug in and discovered that a Solana transaction is made of four parts. Once you understand each one, a lot of other concepts click into place.

The Four Parts of a Solana Transaction

  1. Instructions – what you want to do.
  2. Accounts – which data will be touched.
  3. Signatures – proof of authorization.
  4. Recent blockhash – a built‑in expiry stamp.

Instructions

An instruction is the action itself. It says: call this program with these inputs.

For a basic SOL transfer, the instruction calls Solana’s System Program, a built‑in program that handles moving SOL between wallets. You don’t deploy it; it’s always present.

Key point: A single transaction can contain multiple instructions. You could transfer SOL, create an account, and call another program—all in one shot. Transactions are all‑or‑nothing: either every instruction succeeds or the whole transaction fails. No partial results.

Accounts

In Solana, almost everything is an account—your wallet, a token balance, a deployed program. The network state is essentially one giant table where each row has an address and some data.

When you write an instruction, you must declare every account it will touch upfront, even if you’re only reading from it. You also mark each account as:

  • Writable or Read‑only
  • Signer (needs to sign) or not

This may feel like extra work, but it enables Solana to determine which transactions can run in parallel. No shared accounts → no conflict → they can be processed simultaneously. This parallelism is a major reason Solana can handle many transactions per second.

Signatures

Before a transaction is broadcast, it is signed with your private key. Validators verify the signature against your public key before executing anything. If the transaction is tampered with after signing, the signature won’t match and the transaction is rejected.

Two important notes:

  • Multiple signatures are possible. Some programs require both parties to sign, and multisig setups need a minimum number of co‑signers.
  • The signature itself is the transaction ID. The long string you see in the Explorer URL isn’t a separate identifier—it’s the cryptographic signature, which also serves as proof of authorization.

Recent Blockhash

Every transaction must include a recent blockhash—a hash of a block produced recently on the chain. It serves two purposes:

  1. Replay protection – prevents someone from resubmitting your signed transaction later. The blockhash ties the transaction to a specific moment, so the network rejects anything referencing an old hash.
  2. Expiry – a blockhash is only valid for about 150 blocks (≈ 60–90 seconds). After that window the transaction is dead, and you need a fresh blockhash to try again.

This is a key difference from traditional Web2 database transactions, which never expire. Think of a Solana transaction as a signed cheque with an expiry date: the signature is valid, but only within a short time window.

Practical tip: Fetch the blockhash as late as possible—right before you send the transaction.

Putting It All Together

A Solana transaction isn’t just a request; it’s a signed, time‑limited, all‑or‑nothing bundle that declares its own authorization and expiry before hitting the network.

When you open any of your devnet transactions on Solana Explorer, you’ll see:

  • Account Inputs – every account, labeled writable or read‑only
  • Instructions – each one expanded with its program and data
  • Signatures – displayed at the bottom of the page

Map what you see back to the four parts above. The layout will differ when the transaction on screen is one you sent yourself versus one you’re just inspecting.

Conclusion

Once the four components—instructions, accounts, signatures, and recent blockhash—settle in, many aspects of Solana that seemed odd start to make sense. This understanding is a crucial step in my #100DaysOfSolana journey.

0 views
Back to Blog

Related posts

Read more »

Hive-index now shows dapps activity

!Cover image for Hive-index now shows dapps activityhttps://media2.dev.to/dynamic/image/width=1000,height=420,fit=cover,gravity=auto,format=auto/https%3A%2F%2Fd...