Draw the line where authority changes.
A product interface can guide an action without owning the user’s signing key or deciding what the network records.
Before the wallet request
The app may explain the action, prepare transaction instructions and identify the accounts involved. It should state what it is asking the wallet to sign and avoid implying that the user has already authorised anything.
At the wallet boundary
The wallet is the user’s signing interface. It can return a signature or a rejection, subject to the selected wallet’s implementation. A web app should not imply that it controls the signing key merely because it initiated the request.
At the network boundary
A signed transaction can be submitted. An RPC response, transaction status and the resulting account state answer different questions. The app should retain the transaction signature, query it at a stated commitment level, and then read the relevant account before describing the result.
For a native stake account
Solana’s stake and withdraw authorities have distinct roles, and delegation activation takes place over epochs. A product team should verify the exact stake account, authorities, instructions, vote account and current state. The generic map on this page is not a substitute for inspecting the transaction.
Read the wallet signing and staking status or download the integration review worksheet.