WATS Wallet logoWATS Wallet
Teknik8 dk okuma

Kripto cüzdan hata mesajları açıklandı: execution reverted, nonce too low, blockhash not found (EVM, Solana, TON)

"execution reverted", "nonce too low", "Blockhash not found", AA21 ve TON exit code 37 gibi hataları arayın: EVM, Solana ve TON'daki her hatanın ne anlama geldiği, denemenin ağ ücreti harcayıp harcamadığı ve nasıl düzeltileceği.

Alltoscan LLC tarafından, WATS Wallet'ın arkasındaki şirket Editoryal politika

Yayımlanma Güncellenme

Ekim 2026 itibarıyla cüzdan hatalarının çoğu iki gruba ayrılır. Bir işlem bloğa dahil edilmeden önce ortaya çıkan hatalar ("nonce too low", "replacement transaction underpriced", "insufficient funds for gas * price + value" veya Solana'nın "Transaction simulation failed: Blockhash not found" hatası gibi) zincir üstünde hiçbir şeyin kaydedilmediği ve hiçbir ağ ücretinin harcanmadığı anlamına gelir. Dahil edildikten sonraki başarısızlıklar (revert eden veya gas'ı biten bir EVM işlemi, hatayla sonuçlanarak işlenen bir Solana işlemi ya da bir TON compute fazı hatası gibi) yapılan iş için yine de ücret tüketir. Aradığınız hata metnini, anlamı ve çözümü için aşağıdaki tablolarda bulun.

Başarısız bir işlem size ücrete mal oldu mu? Önce bakmanız gereken tek kural

Başarısız bir işlem, ancak başarısız olmadan önce bir bloğa dahil edildiyse ağ ücreti doğurur.

Bir işlem iki anda başarısız olabilir:

  • Dahil edilmeden önce: cüzdanın simülasyonu, RPC düğümü veya mempool işlemi reddeder. Hiçbir şey bir bloğa ulaşmaz, bu yüzden ağ ücreti harcanmaz.
  • Dahil edildikten sonra: işlem bir bloğa girer, kodu çalışır ve başarısız olur. Yapılan iş için ücret harcanır. Etherscan, kullanılan hesaplama nedeniyle başarısız işlemlerde de gas'ın düşüldüğünü söyler; Solana'nın ücret belgeleri de işlem başarısız olsa bile ücretin yine alındığını söyler.

Hangi durumda olduğunuzu anlamak için işlem hash'ini veya imzasını bir blok gezgininde arayın. Birkaç dakika sonra hiçbir kayıt yoksa genellikle işlem hiç bloğa girmemiştir ve hiçbir maliyeti yoktur; Pending durumu henüz dahil edilmediği anlamına gelir. Failed veya Reverted olarak işaretlenmiş ya da sıfırdan farklı bir exit code taşıyan bir kayıt ise işlemin bloğa girdiği ve ücretin harcandığı anlamına gelir.

Hangi EVM hataları "nonce too low", "underpriced" veya "out of gas" anlamına gelir?

Bunlar go-ethereum istemci kaynak kodundaki tam metinlerdir ve çoğu, işlemin bir bloğa ulaşmadan reddedildiği anlamına gelir.

Tam hataNe anlama gelirAğ ücreti harcandı mı?Ne yapmalı
"nonce too low"Bu numaralı bir işlem zaten onaylandı; cüzdan durumu eskiHayırCüzdanı yeniden senkronize edin ve gezgine bakın; yalnızca amaçladığınız işlem zaten gerçekleşmediyse tekrar gönderin
"replacement transaction underpriced"Hızlandırma veya iptal için ücret artışı çok küçük kaldıHayırDaha fazla artırın; Geth'in varsayılanı %10 ister
"max fee per gas less than block base fee"Maksimum ücretiniz mevcut base fee'nin altındaHayırMaksimum ücreti yükseltin
"insufficient funds for gas * price + value"Native coin, tutar artı maksimum gas'ı karşılamıyorHayırNative coin yatırın; bkz. token var ama gas token'ı yok
"already known"Aynı işlem zaten mempool'daHayırBekleyin; zararsızdır
"out of gas"Yürütme gas limitini aştı; değişiklikler geri alındıEvetDaha yüksek bir gas limitiyle yeniden deneyin

"execution reverted" ne demek?

"Execution reverted", bir akıllı kontratın işlemi reddettiği ve yaptığı her değişikliği geri aldığı anlamına gelir. İki noktada ortaya çıkar ve ücret durumu farklıdır.

Cüzdanın gönderim öncesi tahmininde görünüyorsa hiçbir şey gönderilmemiştir ve ücret harcanmamıştır. İşlem bloğa girdiyse Etherscan onu Fail veya Reverted olarak gösterir ve Alchemy'ye göre gönderen, kullanılan gas için yine de ödeme yapar. İki noktadan sonraki metin gerçek nedendir. Yaygın olanlar:

  • "UniswapV2Router: INSUFFICIENT_OUTPUT_AMOUNT": fiyat, imzalama ile dahil edilme arasında slippage sınırınızı aştı.
  • "ERC20: insufficient allowance": token onayı, harcanan tutardan küçük. Benzer bir hata olan "ERC20: transfer amount exceeds balance" ise taşımaya çalıştığınızdan daha az token'a sahip olduğunuz anlamına gelir.

Bu iki ERC-20 metni OpenZeppelin v4 kontratlarından gelir; daha yeni sürümler farklı adlara sahip özel hatalar kullanır.

ERC-4337 AA kodları ve EIP-7702 hataları ne anlama gelir?

Akıllı kontrat hesapları normal bir işlem yerine bir bundler aracılığıyla bir UserOperation gönderir ve EIP-4337 spesifikasyonu, EntryPoint hata mesajlarının AA## biçiminde bir kodla başladığını söyler.

KodNe anlama gelirAğ ücreti harcandı mı?
AA21 didn't pay prefundPaymaster kullanılmadı ve hesabın EntryPoint depozitosu maksimum gas'ı karşılayamıyorHayır
AA23 revertedHesabın doğrulama kodu işlemi reddettiHayır
AA33 revertedPaymaster'ın doğrulaması işlemi reddettiHayır
AA95 out of gasPaketin gas limiti, işlem veya bir alt çağrı için çok düşüktüNormalde hayır; handleOps geri alınır

EIP-4337 spesifikasyonu, bir bundler'ın simülasyonu geri alınan bir işlemi düşürmesi gerektiğini söyler; bu yüzden doğrulama hataları (AA2x ve AA3x) normalde zincir üstünde hiçbir şey bırakmaz. Bir işlem dahil edilir ve ana çağrısı geri alınırsa, gas yine de zincir üstünde hesap ya da onu sponsor eden paymaster tarafından ödenir. Alchemy, AA95'in genellikle gas limitlerinin çok düşük ayarlandığı anlamına geldiğini belirtir; handleOps geri alınır, bu yüzden daha yüksek gas limitleriyle yeniden deneyin (bir bundler veya SDK ayarı).

EIP-7702, bir düğümden görebileceğiniz bir hata ekler: "in-flight transaction limit reached for delegated accounts" (Geth'in havuzu böyle bir hesap için yalnızca bir bekleyen yürütülebilir işlem kabul eder, bu yüzden onu bekleyin). Yanlış zincir kimliği veya nonce içeren bir yetkilendirme sessizce atlanır; bu yüzden işlem, delegasyon uygulanmadan başarılı olabilir. Hesabınızı bilerek delege etmediyseniz delegasyonu kontrol edin ve iptal edin: beklenmedik bir delegasyon, bir drainer işaretidir.

Solana'daki "Blockhash not found" ve "block height exceeded" ne demek?

"Block height exceeded" blockhash'in süresinin dolduğu, "Blockhash not found" ise düğümün blockhash'i tanımadığı anlamına gelir (genellikle süresi dolmuştur, bazen düğüm geridedir). Her iki durumda da işlem normalde işlenmemiştir. Solana'nın onay rehberine göre bir blockhash yaklaşık 151 blok, kabaca 60 ila 90 saniye geçerli kalır ve süresi dolmuş bir işlem artık işlenemez.

Tam hataNe anlama gelirAğ ücreti harcandı mı?Ne yapmalı
"Transaction simulation failed: Blockhash not found"Blockhash çok eski ya da simülasyonu yapan düğüm onu henüz görmemiştiHayırYeni bir blockhash için yeniden deneyin
"block height exceeded" hatası (TransactionExpiredBlockheightExceededError)Blockhash'in süresi dolmadan işlem bloğa girmediHayır, süre dolmadan hemen önce bloğa girmediyse; imzayı kontrol edinİmzayı bir gezginde kontrol edin, sonra yeniden deneyin
"Transaction simulation failed: Error processing Instruction N: custom program error: 0x..."Program, takas slippage'i gibi bir başarısızlık öngördüHayır, göndermeden önce simülasyonda yakalandığında; bir cüzdan veya uygulama simülasyonu atlarsa işlem Failed olarak bloğa girebilir ve ücret harcanırNedeni okuyun; slippage'i veya tutarı ayarlayın
"Attempt to debit an account but found no record of a prior credit."Ödeme yapan hesapta hiç SOL yokHayırSOL ile fonlayın
"Transaction results in an account (0) with insufficient funds for rent"Göndermek, bir hesabı rent-exempt asgarinin altında bırakırHayır, simülasyonda yakalandığında; simülasyon atlanırsa Failed olarak bloğa girebilir ve ücrete mal olurBiraz daha az gönderin; bkz. Solana rent
Gezgin "Failed" gösteriyorİşlem bloğa girdi ve program bir hata döndürdüEvetGezgin kaydını okuyun, düzeltin, yeniden gönderin

Solana ücretleri her zaman SOL ile ödenir; bu yüzden "Insufficient funds for fee" ve "insufficient funds for rent" SOL'a ihtiyacınız olduğu anlamına gelir. Bir token transferinden gelen yalın "insufficient funds" veya "custom program error: 0x1" ise göndermeye çalıştığınızdan daha az o token'a sahip olduğunuz anlamına gelir.

Solana'da priority fee'yi (öncelik ücreti) yükseltmeli misiniz?

Priority fee'yi yalnızca bir işlem tıkanıklık sırasında sürekli süresi doluyorsa yükseltin, bir simülasyon hatası göründüğünde değil.

solana.com ücret belgelerine göre bir Solana ücreti, imza başına 5.000 lamport'luk bir base fee (%50 yakılır, %50 validatöre gider) artı isteğe bağlı bir priority fee'dir: compute-unit fiyatı (mikro-lamport cinsinden) çarpı compute-unit limiti, 1.000.000'a bölünür ve tam lamport'a yukarı yuvarlanır; bunun tamamı validatöre gider. Daha yüksek bir priority fee, yoğun bir lider (leader) tarafından işleminizin planlanma olasılığını artırır. Slippage, rent veya eksik SOL hatalarını düzeltmez ve işlem bloğa girip başarısız olursa yine alınır. Bir simülasyon hatası görünürse bunun yerine nedeni düzeltin.

TON exit code'ları ve bounced mesajlar ne anlama gelir?

Bir TON işlemi fazlar halinde çalışır (storage, credit, compute, action, bounce) ve docs.ton.org'a göre 0 ve 1 exit code'ları başarı, diğer her şey başarısızlık anlamına gelir. Compute başarısız olursa action fazı atlanır ve bounce edilebilir bir gelen mesaj için bir bounce mesajı oluşturulur; ücretler faz faz düşülür, bu yüzden önceki ücretler harcanmış kalır. Ücretler GRAM ile ödenir (eski adıyla Toncoin; bkz. yeniden adlandırmada ne değişti).

SinyalNe anlama gelirAğ ücreti harcandı mı?Ne yapmalı
Exit code 13 veya -14Compute fazında gas bittiEvet, kullanılan gas içinDaha fazla GRAM ekleyin
Exit code 9Cell underflow: kontrat, bir cell'in tuttuğundan daha fazla veri okumaya çalıştı; çoğunlukla payload kontratın beklediğiyle uyuşmadığı içinEvetPayload'un veya yorumun o kontrata uygun olup olmadığını kontrol edin
Exit code 37Action fazı: giden mesajı göndermek için "Not enough GRAMs"EvetDaha fazla GRAM ekleyin
Compute fazı atlandıMesaj, yürütmeyi ödemek için çok az GRAM taşıyorduGas yok; storage fazı yine de çalışırDaha fazla GRAM ekleyerek gönderin
Bounced mesajHedef başarısız oldu veya mevcut değilEvet, ücretler düşülürDeğer, mesaj ve gas ücretleri düşülerek geri döner

WATS Wallet bu hatalarla nasıl ilişkilidir

Alltoscan LLC'nin WATS Wallet'ı, EVM ağları, Solana ve TON için anahtarlarınızı ve kurtarma ifadenizi sizin tuttuğunuz non-custodial bir cüzdandır (Chrome eklentisi ve iOS/Android uygulaması). Bu rehberdeki mesajlar, o zincirlerin tanımladığı ağ düzeyi hatalardır; WATS'a özgü kodlar değildir.

Solana'da ağ ücretleri SOL ile ödenir; bu yüzden Solana'daki "insufficient funds" satırı doğrudan geçerlidir: küçük bir SOL bakiyesi tutmak ondan kaçınmanızı sağlar. TON satırları protokol düzeyindeki hataları anlatır; WATS Wallet'ta TON'daki ücretler ATS ile ödenir. EVM ağlarında WATS Wallet, ağ ücretlerini bir ERC-4337 paymaster aracılığıyla, BNB Chain'deki tek bir ATS bakiyesinden ATS ile alır; ATS ücreti nasıl çalışır ayrıca anlatılmıştır.

Sıkça sorulan sorular

Bir kripto işlemi başarısız olduğunda para kaybeder miyim?

Ne zaman başarısız olduğuna bağlı. Dahil edilmeden önce reddedildiyse ("nonce too low", "replacement transaction underpriced" veya "Blockhash not found" gibi simülasyon, düğüm ya da mempool hataları), hiçbir şey bloğa girmemiştir ve ağ ücreti harcanmamıştır. Bloğa girip başarısız olduysa (bir EVM revert'i veya out of gas, bir Solana gezgininde "Failed", sıfırdan farklı bir TON exit code'u), yapılan iş için ücret harcanmıştır; ancak göndermeye çalıştığınız tutar hesabınızda kalır ve TON bounce'ları değeri ücretler düşülerek geri döndürür. Hangi durumun geçerli olduğunu görmek için hash'i veya imzayı bir gezginde kontrol edin.

Bekleyen bir işlemim yokken cüzdanım neden "nonce too low" diyor?

Nonce, hesabın işlem sayacıdır ve "nonce too low", bu numaralı bir işlemin zaten onaylandığı anlamına gelir. Yaygın nedenler, aynı hesabı başka bir cüzdan uygulamasından veya cihazdan kullanmak, aslında onaylanmış "takılmış" bir işlem veya eski önbelleğe alınmış cüzdan durumudur. Amaçladığınız ödemenin ya da işlemin zaten gerçekleşip gerçekleşmediğini bir gezginde kontrol edin; gerçekleştiyse tekrar göndermeyin; gerçekleşmediyse cüzdanı yeniden senkronize edin ve yeniden gönderin. Reddedilen denemenin kendisi ücret harcamadı. Gerçekten bekleyen bir işlem varsa, <a href="/blog/speed-up-or-cancel-stuck-transaction">bekleyen bir işlemin nasıl hızlandırılacağına veya iptal edileceğine</a> bakın.

Solana'da "block height exceeded" veya "Blockhash not found" sonrası yeniden denemek güvenli mi?

Genellikle evet. "Block height exceeded" blockhash'in süresinin dolduğu (yaklaşık 151 blok, kabaca 60 ila 90 saniye), "Blockhash not found" ise düğümün onu tanımadığı, genellikle de süresi dolduğu için tanımadığı anlamına gelir. Süresi dolmuş bir işlem artık işlenemez; bu yüzden sonradan bloğa girip yenisini çoğaltamaz; yine de önce imzayı bir Solana gezgininde arayın, sonra yeni bir blockhash ile yeniden deneyin. Süresi dolmuş deneme, süre dolmadan önce bloğa girmediyse ücret almadı; bunu gezgin araması gösterir ve işlem tıkanıklık sırasında sürekli süresi doluyorsa biraz daha yüksek bir priority fee yardımcı olabilir.