Cos'è l'errore Internal JSON-RPC su MetaMask?
L'errore Internal JSON-RPC indica che MetaMask ha inviato una richiesta a un nodo blockchain e ha ricevuto un errore invece di una risposta utilizzabile. Internamente corrisponde al codice di errore -32603 nel riferimento JSON-RPC di MetaMask, un codice generico che il protocollo riserva a payload errati o non validi.
Poiché MetaMask si affida a JSON-RPC per tutto, il messaggio può interrompere i controlli del saldo, gli scambi di token, le chiamate ai contratti e perfino il cambio di rete. Compare più spesso su Ethereum, sulle reti Layer 2 come Base e Arbitrum e sulla testnet Sepolia, dove singoli endpoint vanno offline senza preavviso.
Da quando MetaMask è diventato un wallet multichain che copre Ethereum, Solana, Bitcoin e TRON, l'errore ha iniziato a comparire anche su richieste non EVM che le versioni precedenti, solo Ethereum, non effettuavano mai. Le soluzioni qui sotto coprono sia le cause classiche sia quelle più recenti introdotte da quel rinnovamento.

Come risolvere l'errore interno JSON-RPC
La maggior parte dei casi dipende da una singola impostazione errata e non da un problema più profondo del wallet, quindi eseguire in ordine i controlli qui sotto risolve l'errore in fretta.
Segui in ordine queste sette soluzioni finché l'errore non scompare:
- Impostazioni di rete: apri il menu delle reti, modifica la chain che non funziona e verifica RPC URL e Chain ID confrontandoli con la documentazione ufficiale, oppure aggiungila di nuovo automaticamente tramite ChainList.
- Saldo di gas: prima di riprovare, tieni abbastanza token nativo della rete, come ETH, BNB o POL, e controlla prima le commissioni in tempo reale con il nostro tracker del gas di Ethereum.
- Aggiornamento del wallet: installa l'ultima versione dell'estensione o dell'app mobile, perché l'architettura degli account multichain di MetaMask è arrivata con Extension 13.5 e Mobile 7.57, e le versioni precedenti interpretano in modo errato le risposte più recenti.
- Endpoint RPC: sostituisci un endpoint lento o non funzionante con un'alternativa da ChainList o da un fornitore dedicato come Infura o Alchemy, quindi riprova la transazione fallita.
- Hardware wallet: aggiorna il firmware di Ledger o Trezor, abilita i dati degli smart contract nell'app Ethereum del dispositivo e riconnettiti con il metodo di connessione che la guida alla risoluzione dei problemi di Ledger raccomanda attualmente.
- Reset dell'account: usa Clear activity tab data nelle impostazioni avanzate per cancellare la cronologia delle transazioni in cache e i nonce bloccati, costringendo MetaMask a risincronizzarsi correttamente con il nodo.
- Verifica del testnet: controlla che il testnet che intendi usare esista ancora, perché Holesky è stato chiuso dopo l'aggiornamento Fusaka e i suoi vecchi endpoint ora rifiutano qualsiasi richiesta.
Se ogni passaggio fallisce, il MetaMask Help Center offre diagnostica più approfondita, inclusi i log di stato che il team di supporto può esaminare direttamente. Se i problemi persistono su una singola dApp, di solito il difetto sta nelle chiamate al contratto di quell'applicazione e non nel tuo wallet, quindi prova un altro sito prima di rivolgerti al supporto.

Come aggiungere correttamente un RPC con ChainList
I dati RPC digitati manualmente restano la causa più comune di questo errore, perché un solo carattere sbagliato in un URL o in un Chain ID compromette ogni richiesta inviata successivamente dal wallet. ChainList elimina questo rischio mantenendo endpoint verificati per centinaia di reti e aggiungendoli a MetaMask con un clic.
Usiamo lo stesso procedimento nella nostra guida su come aggiungere HyperEVM a MetaMask, quindi i passaggi seguenti valgono per quasi qualsiasi rete EVM, dalle principali reti Layer 2 alle mainnet appena lanciate. Quattro passaggi ti portano da un elenco di reti vuoto a una connessione verificata.

1. Collega MetaMask a ChainList
ChainList legge i parametri di rete da un registro mantenuto dalla community, quindi collegando il tuo wallet può scrivere quei dati verificati direttamente in MetaMask senza alcuna copia manuale.
Ecco come collegare il tuo wallet al sito:
- Apri ChainList: vai su chainlist.org e controlla con attenzione come è scritto l'indirizzo nella barra prima di connetterti, perché sono circolate versioni clonate del sito con endpoint RPC malevoli precaricati.
- Collega il wallet: clicca sul pulsante Connect Wallet in alto a destra, scegli MetaMask tra le opzioni e approva la richiesta di connessione che compare nel pop-up dell'estensione.
- Controlla le autorizzazioni: il sito richiede solo l'accesso in sola lettura per inviare i dettagli della rete, quindi rifiuta qualsiasi richiesta di firme, approvazioni di token o autorizzazioni di spesa di qualsiasi tipo.

2. Cerca la rete corretta
La maggior parte delle blockchain ha più versioni e confondere una mainnet con la relativa testnet porta in pochi minuti a transazioni fallite, saldi invisibili e nuovi errori JSON-RPC.
Segui questi controlli per arrivare alla voce giusta:
- Cerca con precisione: digita il nome esatto della rete, che si tratti di Base, Linea o di una chain più recente come Monad, e attiva l'opzione testnet solo quando ti serve.
- Verifica gli identificatori: confronta il Chain ID mostrato con la documentazione ufficiale del progetto, perché le reti truffa a volte riutilizzano nomi familiari puntando in realtà a chain completamente diverse.
- Attenzione ai testnet: per i test su Ethereum, usa Sepolia per le dApps e Hoodi per il lavoro sui validatori, perché la Ethereum Foundation ha ritirato Holesky e le relative quotazioni non funzionano più.

3. Aggiungi l'RPC a MetaMask
Una volta che compare la rete giusta, ChainList passa a MetaMask l'intera configurazione in un'unica richiesta, eliminando gli errori di battitura che l'inserimento manuale favorisce.
Completa il passaggio con queste tre azioni rapide:
- Aggiungi rete: premi Add to MetaMask accanto alla voce con il miglior punteggio di latenza, poiché ChainList classifica ogni endpoint pubblico in base alla velocità e all'affidabilità misurate in tempo reale.
- Controlla il pop-up: leggi la finestra di MetaMask che mostra URL RPC, Chain ID, simbolo della valuta e block explorer, poi confronta ogni valore prima di dare la tua approvazione finale.
- Passa alla nuova rete: approva l'aggiunta e seleziona Switch Network quando richiesto, così la nuova chain diventa subito attiva e pronta per una piccola transazione di prova.

4. Verifica le impostazioni al termine
Anche le voci verificate col tempo possono diventare obsolete, perché i provider dismettono gli endpoint: una rapida revisione in MetaMask conferma che tutto sia stato aggiunto correttamente e risponda ancora oggi.
Fai quest'ultimo controllo prima di trasferire fondi reali:
- Apri le impostazioni: vai al selettore di rete, scegli la chain appena aggiunta e fai clic su Modifica per visualizzare tutti i parametri memorizzati che MetaMask userà per le sue richieste.
- Verifica incrociata: confronta URL RPC, Chain ID e simbolo della valuta con la documentazione ufficiale della rete, non con un blog di terzi, uno screenshot o un messaggio non ufficiale su Discord.
- Cambia endpoint: se le richieste sono lente o falliscono in modo intermittente, sostituisci l'URL con un'altra opzione di ChainList, poiché ora MetaMask supporta più URL RPC salvati per ogni rete.

Perché si verifica l'errore JSON-RPC?
I fallimenti di JSON-RPC si riducono a una cosa: il nodo non ha mai ricevuto una richiesta valida oppure non è riuscito a restituire una risposta valida. La documentazione per sviluppatori di MetaMask elenca 17 codici di errore JSON-RPC distinti, e la varietà interna convive in quella tabella con limiti di frequenza, errori di parsing e transazioni rifiutate.
Capire quale tipo di errore stai riscontrando fa risparmiare tempo, perché ognuno indica una soluzione diversa, dal cambio di endpoint alla semplice attesa che la congestione passi.
Questi sono i motivi più comuni per cui le richieste JSON-RPC falliscono:
- Richieste malformate: una dApp costruisce una chiamata al contratto con dati di input errati o parametri sbagliati, quindi il nodo rifiuta il payload prima ancora che raggiunga l'esecuzione.
- Limiti di frequenza: gli endpoint pubblici gratuiti e i livelli di Infura basati su crediti limitano il volume delle richieste, e nei periodi di grande attività, come i lanci di token, i wallet superano questi limiti nel giro di pochi secondi.
- Nodi obsoleti: un nodo non sincronizzato fornisce uno stato della chain non aggiornato, con saldi errati, transazioni bloccate e quotazioni di swap che falliscono nel momento in cui MetaMask prova a eseguirle.
- Contract reverts: uno smart contract esaurisce il gas o va in revert durante l'esecuzione, e MetaMask lo segnala come errore RPC durante bridging, staking o richieste di airdrop di token.
- Incompatibilità di chain: alcuni endpoint non supportano metodi richiesti dalle reti Layer 2, quindi swap o deployment falliscono su quelle chain anche quando il Chain ID è corretto.
- Testnet dismesse: le richieste dirette a reti di test ritirate come Holesky o la più vecchia Goerli falliscono subito, perché nessun nodo attivo risponde più alle richieste su quegli endpoint obsoleti.
- Chiamate in batch: le funzionalità di smart account EIP-7702 raggruppano più azioni in un'unica transazione, e un singolo passaggio che va in revert all'interno del batch può far fallire l'intera richiesta aggregata.
Alcuni di questi fattori dipendono da te, altri no. La scelta dell'endpoint, i saldi di gas e le versioni del software si sistemano in pochi minuti, mentre i disservizi del provider e la congestione della rete richiedono semplicemente pazienza o un passaggio temporaneo a un altro RPC finché le condizioni non migliorano.

Come i recenti aggiornamenti di MetaMask hanno cambiato la risoluzione dei problemi RPC
MetaMask ha un aspetto molto diverso dal wallet che questo errore colpì all'inizio. Tra il 2025 e il 2026 ha integrato il supporto a Solana, Bitcoin, TRON, Sei e Monad, ha ricostruito il proprio sistema di account e ha rilasciato aggiornamenti degli smart account, il tutto modificando dove e come compaiono i guasti RPC.
Gli account multichain uniscono ogni rete in uno solo
Dall'estensione 13.5, ogni account MetaMask riunisce sotto un unico nome un indirizzo EVM, un indirizzo Solana e un indirizzo Bitcoin, con il wallet che instrada automaticamente le richieste. Un errore su una rete non significa più che l'intero wallet sia rotto, quindi prova sempre una seconda chain prima di presumere una corruzione.
Le chain non-EVM usano una propria infrastruttura di nodi, quindi un'interruzione di Solana produce sintomi diversi da una di Ethereum anche all'interno della stessa interfaccia. Quando gli errori colpiscono un solo ecosistema, la causa probabile è un problema all'endpoint di quella specifica rete e non un difetto della tua installazione.

Gli smart account aggiungono una nuova superficie di rischio
L'aggiornamento Pectra di Ethereum ha attivato l'EIP-7702 a maggio 2025, consentendo ai normali account MetaMask di comportarsi temporaneamente come smart contract per transazioni raggruppate e sponsorizzazione del gas. Queste operazioni aggregate passano attraverso un'infrastruttura aggiuntiva e, quando un bundler o un paymaster non funziona correttamente, il wallet spesso segnala un generico errore interno.
Se l'errore compare solo quando una dApp richiede un'azione in batch o un aggiornamento dell'account, rifiuta la richiesta dello smart account e riprova come transazione standard. In questo modo capisci se il problema dipende dal flusso di delega o dalla connessione RPC sottostante, che risolveresti normalmente.
Il rinnovamento delle testnet di Ethereum ha reso obsolete le vecchie configurazioni
L'Ethereum Foundation ha dismesso Holesky dopo la finalizzazione dell'aggiornamento Fusaka, sostituendolo con Hoodi per i test dei validatori e raccomandando Sepolia per il lavoro sugli smart contract. Qualsiasi configurazione di Holesky ancora salvata in MetaMask ora genera errori JSON-RPC a ogni richiesta e nessuna modifica alle impostazioni potrà farla funzionare di nuovo.
Gli sviluppatori dovrebbero eliminare del tutto le voci testnet obsolete e riaggiungere quelle attuali tramite ChainList. Sepolia resta la scelta predefinita per i test delle dApp, ma è già previsto un successore di Sepolia, quindi aspettati che questo ciclo di dismissione dei testnet continui a produrre errori RPC fantasma ogni pochi anni.
Come leggere il codice di errore dietro il messaggio
MetaMask spesso nasconde il codice numerico nei dettagli dell'errore, ma espanderli indica esattamente quale categoria di errore si è verificata. Confrontare il codice con la tabella di riferimento di MetaMask trasforma un messaggio vago in una diagnosi precisa e di solito indica subito la soluzione giusta.
Pochi codici spiegano quasi tutti gli errori segnalati dagli utenti, quindi riconoscerli subito rende la risoluzione dei problemi molto più rapida rispetto a procedere a tentoni ogni volta.
Ecco i codici da memorizzare e il loro significato:
- Codice -32603: il classico errore interno, causato da un payload errato o non valido, e il codice che sta dietro alla maggior parte delle comparse di questo esatto messaggio di errore di MetaMask.
- Codice -32000: input non valido, di solito per parametri mancanti o un blocco che il nodo non ha ancora elaborato; spesso si risolve passando a un endpoint RPC più affidabile.
- Codice -32005: limite superato, cioè le tue richieste hanno superato il tetto del provider, quindi rallenta, attendi un minuto o passa semplicemente a un endpoint pubblico meno congestionato.
- Codice -32602: argomento non valido, di solito un errore di formattazione come un prefisso 0x mancante, che indica un problema nel codice della dApp piuttosto che nel tuo wallet o nella configurazione della rete.
- Codice -32601: metodo non trovato, ovvero l'endpoint non supporta ciò che MetaMask ha richiesto, un problema frequente sugli endpoint RPC pubblici minimali che servono chain più recenti.
- Codice 429: un errore HTTP di throughput e non di JSON-RPC, che indica che è stato il provider stesso a limitarti; piani superiori o la rotazione degli endpoint lo risolvono entrambi facilmente.

Come evitare i problemi RPC in MetaMask
La prevenzione dipende soprattutto dall'igiene degli endpoint. Aggiungi le reti tramite ChainList o la documentazione ufficiale invece che da tutorial casuali, salva un URL RPC di riserva per ogni chain che usi regolarmente e valuta una chiave personale gratuita di un provider come Infura o Alchemy, così smetti di competere per la capacità pubblica condivisa.
Anche la manutenzione ordinaria conta altrettanto. Mantieni aggiornati l'estensione e l'app mobile, cancella i dati di attività dopo le transazioni fallite invece di lasciare accumulare errori obsoleti ed elimina le reti che non usi più, perché ogni voce inutilizzata è un futuro errore in attesa di un clic accidentale.

Considerazioni finali
L'errore Internal JSON-RPC sembra allarmante, ma quasi mai indica una perdita di fondi: segnala solo un dialogo interrotto tra il tuo wallet e un nodo. Verificare i dettagli della rete, cambiare endpoint, avere gas a sufficienza e aggiornare il software risolve la stragrande maggioranza dei casi senza bisogno di contattare il supporto.
Poiché MetaMask continua a espandersi su più chain, saper gestire autonomamente le connessioni RPC sta diventando una competenza fondamentale per usare un wallet. Aggiungi ChainList ai preferiti, impara i codici di errore descritti sopra e, se stai valutando alternative, la nostra guida ai migliori wallet crypto confronta come le diverse opzioni gestiscono gli stessi problemi.






