Quando invii crypto, il destinatario può chiederti l’hash della transazione per verificare il pagamento. Incollare quel codice su Etherscan, però, non basta sempre: una transazione può essere stata inviata sulla rete sbagliata, può contenere un token diverso da quello atteso oppure può risultare riuscita senza trasferire fondi all’indirizzo che stai controllando.
Etherscan consente di ricostruire molti dettagli dell’operazione, ma bisogna interpretare correttamente le diverse sezioni. Questa guida mostra come verificare un pagamento in modo ordinato, senza confondere la transazione principale con i trasferimenti generati da uno smart contract.
Che cosa serve prima di iniziare
Per controllare un pagamento servono almeno uno di questi elementi: l’hash della transazione, l’indirizzo del mittente, l’indirizzo del destinatario, la rete utilizzata e il tipo di asset trasferito. L’hash, chiamato anche transaction hash o transaction ID, è il dato più utile perché identifica una specifica operazione on-chain.
Il primo controllo riguarda il sito utilizzato. Etherscan è l’esploratore della rete Ethereum e delle reti compatibili che dispongono di un proprio explorer basato sul servizio o su interfacce simili. Una transazione eseguita su una rete diversa deve essere cercata sull’esploratore corretto. Lo stesso indirizzo esadecimale può esistere su più reti, ma il saldo e la cronologia non sono automaticamente condivisi.
È quindi importante non confondere Ethereum con una rete layer 2 o con un’altra blockchain compatibile con Ethereum. Se il mittente dice di avere inviato fondi su una rete specifica, seleziona l’explorer corrispondente e non limitarti a cercare lo stesso indirizzo su Etherscan.
Come cercare una transazione con l’hash
Inserisci l’hash nella barra di ricerca dell’explorer. Una pagina di transazione normalmente mostra un riepilogo con lo stato, il blocco, il numero di conferme, il mittente, il destinatario, il valore, il costo della transazione e altri dati tecnici.
Il campo Status è il primo elemento da controllare. Un risultato come “Success” indica che la transazione è stata inclusa e che l’esecuzione della chiamata non ha prodotto un errore secondo le regole della rete. “Pending” indica che l’operazione non è ancora stata inclusa in un blocco. “Failed” segnala invece che la transazione è stata inclusa, ma l’esecuzione è terminata con errore.
Una transazione fallita non equivale normalmente a un trasferimento completato dell’asset previsto. Tuttavia, il gas utilizzato per tentare l’operazione può essere stato consumato. Non bisogna quindi considerare “transazione presente” e “pagamento riuscito” come sinonimi.
Il numero di conferme aiuta a capire da quanto tempo l’operazione è stata inclusa nella catena. Più conferme indicano una maggiore distanza dal blocco corrente, ma il significato pratico dipende dalla rete, dall’asset e dalle regole del servizio che deve riconoscere il pagamento. Per un trasferimento importante, il destinatario può richiedere una soglia interna di conferme diversa da quella di un altro servizio.
Come controllare mittente, destinatario e importo
Il campo From identifica l’indirizzo che ha pubblicato la transazione. Il campo To identifica il destinatario della transazione a livello tecnico. Qui nasce uno degli errori più comuni: quando si interagisce con uno smart contract, il campo “To” può indicare il contratto e non il beneficiario finale dei token o dell’ETH.
Per un semplice trasferimento di ETH da un account a un altro, il campo “To” coincide normalmente con l’indirizzo che riceve i fondi e il valore della transazione è l’importo trasferito. Prima di considerare chiuso il controllo, confronta ogni carattere dell’indirizzo con quello comunicato dal destinatario. Un indirizzo simile, ma diverso anche per una sola cifra o lettera, è un indirizzo diverso.
Il campo Value mostra il valore nativo trasferito nella transazione, espresso spesso in ETH o in una sua unità più piccola. Se il pagamento riguarda un token ERC-20, il campo “Value” può essere pari a zero: il trasferimento del token viene registrato negli eventi generati dal contratto, non come trasferimento nativo nella transazione principale.
Controlla anche la differenza tra l’indirizzo del wallet e l’indirizzo del contratto del token. Il nome visualizzato nell’interfaccia non è una prova sufficiente: verifica sempre l’indirizzo del contratto e la rete. Token con nomi o simboli uguali possono avere contratti completamente diversi.
Come verificare un pagamento in token ERC-20
Per un token fungibile, cerca la sezione Token Transfers o la tabella equivalente dei trasferimenti. In genere vengono mostrati mittente, destinatario, quantità, simbolo e contratto del token.
Il controllo corretto consiste nel verificare almeno cinque elementi: lo stato della transazione, l’indirizzo del contratto, l’indirizzo del mittente, l’indirizzo del destinatario e la quantità trasferita. Se il token utilizza decimali, l’importo visualizzato può essere una conversione leggibile del numero intero registrato on-chain. Non confrontare alla cieca il dato tecnico con una ricevuta esterna senza considerare i decimali del token.
Un pagamento può coinvolgere più trasferimenti nella stessa transazione. È possibile, per esempio, che un contratto invii una parte dei token al destinatario e un’altra parte a un indirizzo di resto, a un fornitore di liquidità o a un altro partecipante dell’operazione. Per un trasferimento diretto da wallet a wallet, cerca la riga in cui il destinatario corrisponde esattamente all’indirizzo previsto.
Se la transazione riguarda uno swap, un bridge, un marketplace o un protocollo DeFi, il campo “To” può essere il contratto dell’applicazione e i trasferimenti effettivi devono essere ricostruiti tra gli eventi e le sezioni dedicate. In questi casi un pagamento non va verificato guardando soltanto il valore principale della transazione.
NFT, smart contract e trasferimenti indiretti
Per un NFT, controlla l’evento di trasferimento del token e non soltanto il campo “Value”. La verifica deve includere la collezione corretta, l’indirizzo del contratto, il token ID e l’indirizzo finale del destinatario. Il nome della collezione o l’immagine visualizzata da un wallet possono essere assenti, incompleti o imitati da contratti non ufficiali.
Quando il pagamento passa da uno smart contract, la pagina può mostrare anche transazioni interne, eventi e log. Questi dati descrivono movimenti generati dall’esecuzione del contratto, ma non sono sempre equivalenti a una nuova transazione firmata dal mittente. Per capire il risultato economico dell’operazione, bisogna collegare la funzione chiamata con gli eventi prodotti e con i trasferimenti visibili nella pagina.
Un contratto può inoltre emettere eventi secondo la propria logica. La presenza di una riga “Transfer” non sostituisce il controllo del contratto e dell’indirizzo: un evento può essere emesso da codice malevolo o non rappresentare l’asset che il destinatario si aspettava. Per pagamenti importanti, confronta il contratto con una fonte affidabile fornita dal servizio o dal progetto, senza usare link ricevuti da profili anonimi.
Nonce, gas e timestamp: che cosa dimostrano
Il nonce identifica l’ordine delle transazioni inviate da un account su quella rete. È utile per distinguere operazioni sostitutive o transazioni con lo stesso numero progressivo, ma non dimostra che il destinatario abbia ricevuto il pagamento.
Le informazioni sul gas mostrano il costo pagato per l’esecuzione dell’operazione. Il gas è una spesa del mittente e non fa parte dell’importo che il destinatario dovrebbe ricevere, salvo il caso in cui le condizioni del pagamento lo prevedano esplicitamente. Anche il timestamp indica il momento associato al blocco che include la transazione; non deve essere interpretato come l’orario esatto in cui il mittente ha cliccato su “Invia”.
Questi campi sono utili per la riconciliazione contabile, ma non sostituiscono il controllo di stato, rete, contratto, destinatario e importo.
Errori frequenti durante la verifica
- Controllare la rete sbagliata: lo stesso indirizzo può apparire vuoto su una rete e avere fondi su un’altra.
- Confondere ETH e token: un valore nativo pari a zero non esclude un trasferimento ERC-20 riuscito.
- Guardare soltanto il campo “To”: nei pagamenti gestiti da contratti, il destinatario può comparire nei token transfer o negli eventi.
- Fidarsi del simbolo del token: nomi identici non significano stesso contratto.
- Considerare definitiva una transazione pending: finché non è inclusa e riconosciuta dalla rete, il pagamento non è ancora completato.
- Condividere dati sensibili: per verificare un pagamento non servono seed phrase, chiavi private, PIN o autorizzazioni firmate.
- Usare link sospetti: Etherscan non richiede di collegare il wallet o di firmare una transazione per mostrare una pagina pubblica.
La checklist finale per dichiarare verificato un pagamento
Un controllo ordinato può seguire questa sequenza: apri l’explorer della rete corretta; cerca l’hash; verifica che lo stato sia riuscito; controlla il blocco e le conferme richieste; confronta mittente e destinatario; identifica se l’asset è ETH, token o NFT; verifica il contratto corretto; controlla quantità e decimali; esamina token transfer, eventi o transazioni interne se è coinvolto un contratto.
Se tutti questi elementi coincidono, Etherscan fornisce una prova pubblica dell’operazione registrata sulla blockchain. Non dimostra però da solo che un exchange abbia accreditato il saldo, che un bridge abbia completato la seconda fase o che un servizio abbia applicato correttamente la propria contabilità interna. In questi casi occorre verificare anche la piattaforma ricevente e gli eventuali passaggi successivi.
La regola più importante è separare tre domande diverse: la transazione è stata inclusa? Quale asset è stato trasferito e a chi? Il servizio o il wallet del destinatario ha riconosciuto il pagamento? Etherscan risponde soprattutto alle prime due. La terza dipende dal sistema che riceve i fondi.


