Portfel, który nie chce wysłać transakcji, zwykle nie jest zepsuty. Niemal każdy błąd, który pokazuje, sprowadza się do jednej z trzech rzeczy: licznika zwanego nonce, endpointu, z którym portfel rozmawia, albo pułapu opłaty, który sam ustawiłeś. Gdy wiesz, które z tych trzech się skarży, rozwiązanie jest krótkie — a najczęściej darmowe.
Czym naprawdę jest nonce konta
W sieciach opartych na kontach każde konto, z którego wysyłasz, prowadzi licznik tego, ile transakcji już wysłało. Ten licznik to właśnie nonce i zaczyna się od zera. Pierwsza transakcja używa nonce 0, druga nonce 1, i tak dalej, bez luk.
Reguła jest surowa celowo. Ustala kolejność, w jakiej twoje transakcje się wykonują, i sprawia, że żadnej nie da się powtórzyć: gdy nonce 4 zostanie potwierdzony, każda późniejsza transakcja z tym samym numerem jest odrzucana od razu.
To co innego niż nonce w kopaniu, czyli liczba, którą górnik zmienia w poszukiwaniu prawidłowego bloku. To samo słowo, zupełnie inne zadanie. Portfel skarży się na licznik konta.
Nonce zbyt wysoki, nonce zbyt niski
Portfel nie pyta sieci o numer za każdym razem, gdy naciskasz wyślij. Prowadzi własny licznik i dolicza do niego transakcje, które już rozesłał, ale których jeszcze nie widział potwierdzonych. Ten lokalny licznik może rozejść się z tym, co sieć faktycznie zapisała — a dwa komunikaty opisują dwa kierunki tego rozejścia.
Nonce zbyt niski znaczy, że podany numer jest już zużyty. Sieć go minęła. Zdarza się to często wtedy, gdy transakcja, którą uznałeś za nieudaną, jednak się potwierdziła.
Nonce zbyt wysoki znaczy, że zostawiłeś lukę. Sieć czeka na nonce 7, a portfel podał 9, więc transakcja nie może się jeszcze wykonać — stoi w kolejce i czeka na 7 i 8. Podczas czekania nic nie zostaje wydane, ale też nic się nie dzieje, dopóki luka nie zostanie wypełniona; a węzły trzymają kolejkę tylko przez pewien czas, więc długa luka może skończyć się odrzuceniem transakcji zamiast jej wykonaniem. Typowe przyczyny: transakcja wypadła z mempoola już po tym, jak portfel ją policzył, albo zapisana w pamięci historia portfela rozeszła się z siecią.
Lukę leczy się na dwa sposoby: wypełnić ją albo o niej zapomnieć. Wysłanie brakującego numeru zwalnia wszystko, co za nim stoi. Wyczyszczenie zapisanej historii transakcji — w większości portfeli nazywa się to resetem konta — każe odczytać licznik od nowa z sieci i ruszyć od prawdziwego numeru. Żadne z tych działań nie dotyka twoich kluczy ani salda: nonce jest zapisany w sieci, nie w portfelu.
Zamienić zamiast czekać
Oczekującą transakcję można zastąpić, a nie anulować. Wysyłasz nową z tym samym nonce i wyższą opłatą; która wersja potwierdzi się pierwsza, ta unieważnia drugą. Przelew do samego siebie na zero to zwykły sposób na anulowanie, powtórzenie z tymi samymi danymi to zwykły sposób na przyspieszenie.
Haczyk polega na tym, że węzły nie przyjmują dowolnie małej podwyżki. Każdy klient ma własny próg — domyślnie w go-ethereum zamiennik musi przebić wypieraną transakcję o co najmniej 10%; jeśli go nie osiągniesz, węzeł zostaje przy tym, co ma, i odpowiada replacement transaction underpriced. Podniesienie opłaty naprawdę, a nie symbolicznie, jest tym, co sprawia, że zamiana chwyta.
Bitcoin rozwiązuje ten sam problem inaczej, przez zamianę za opłatę, która działa na wejściach, a nie na liczniku konta. Pomysł jest ten sam, mechanika nie — nie przenoś więc kroków z jednego portfela do drugiego.
Gdy portfel ostrzega przed opłatą
Opłaty w nowoczesnych sieciach opartych na kontach mają dwie części: opłatę bazową, którą sieć ustala i pali, oraz opłatę priorytetową dla tego, kto cię włączy. Wysyłając, portfel zobowiązuje się do maksimum, jakie jest gotów zapłacić za jednostkę gazu. Z tego pułapu biorą się ostrzeżenia o opłacie.
Ustaw pułap poniżej bieżącej opłaty bazowej, a transakcja w ogóle nie zostanie włączona, dopóki opłata bazowa nie opadnie do niego. Ustaw go znacznie wyżej, a portfel może ostrzec, że najgorszy przypadek jest dużo większy niż wartość samego przelewu — raczej nie zapłacisz całego pułapu, ale go autoryzowałeś. W obu przypadkach ostrzeżenie dotyczy pułapu, który wybrałeś, a nie kwoty, którą prawdopodobnie zapłacisz. Jak wycenia się gaz, warto przeczytać raz, bo każde z tych ostrzeżeń stąd wynika.
Endpointy RPC i co się psuje, gdy one zawodzą
Twój portfel nie trzyma kopii łańcucha. Pyta węzeł przez endpoint RPC, a wszystko, co widzisz — salda, historia, czy transakcja przeszła — przychodzi tym połączeniem.
Gdy więc endpoint nie działa, ogranicza ci liczbę zapytań albo zostaje w tyle za czołem łańcucha, portfel nie tyle się myli, ile jest niedoinformowany. Salda wyglądają na nieaktualne. Potwierdzona transakcja pokazuje się jako oczekująca. Wysyłka kończy się błędem połączenia, choć z twoim kontem wszystko jest w porządku.
Zmiana endpointu zwykle to naprawia, a jedno prawdziwe ryzyko warto znać: endpoint widzi każde twoje zapytanie, a wrogi może pokazać ci, co zechce. Dodawaj endpointy tylko ze źródeł, którym byś to powierzył, i sprawdzaj, czy identyfikator łańcucha zgadza się z siecią, w której sądzisz, że jesteś.
| Co widzisz | Co to znaczy | Co zrobić |
|---|---|---|
| Nonce zbyt niski | Ten numer jest już zużyty | Pozwól portfelowi odczytać licznik na nowo; nic nie utknęło |
| Nonce zbyt wysoki | Zostawiłeś lukę w sekwencji | Wyślij brakujący nonce albo zresetuj zapisaną historię konta |
| Replacement transaction underpriced | Podwyżka była za mała, by wyprzeć oczekującą | Wyślij ten sam nonce z wyraźnie wyższą opłatą |
| Maksimum poniżej opłaty bazowej | Twój pułap jest niższy niż to, co sieć bierze teraz | Podnieś pułap albo poczekaj na spadek opłaty bazowej |
| Endpoint nie odpowiada | Węzeł, którego pytasz, nie działa lub cię ogranicza | Przełącz się na inny endpoint i sprawdź identyfikator łańcucha |
Brakujące transakcje po zaimportowaniu portfela
Odtworzenie portfela na nowym urządzeniu czasem pokazuje pustą historię — niepokojące i prawie nigdy nie znaczy tego, na co wygląda. Twoje środki są zapisane w łańcuchu na adresie; portfel trzyma tylko seed phrase, z której ten adres wyprowadza.
Pustą historię tłumaczą trzy rzeczy. Portfel mógł wyprowadzić inny adres niż ten, którego używałeś, bo różni się ścieżka derywacji albo indeks konta. Wybór sieci może wskazywać gdzie indziej. Albo historia po prostu się nie wczytała, bo lista, na którą patrzysz, pochodzi z usługi indeksującej, a nie z samego łańcucha.
Rozstrzyga się to porównaniem adresu, a nie salda. Wklej go do eksploratora bloków. Jeśli eksplorator pokazuje twoje transakcje, nic nie zginęło, a problem tkwi w tym, co wyświetla portfel — o czym warto przeczytać w jak czytać nieudaną lub brakującą transakcję.
Podsumowanie
Trzy ruchome części tłumaczą niemal każdy błąd transakcji w portfelu: licznik, który musi iść po kolei, połączenie, które może się zestarzeć, i pułap opłaty, który ustawiasz sam. Żadna z nich nie dotyczy twoich kluczy i żadnej nie naprawia wysłanie tej samej transakcji jeszcze raz, mocniej.
Przeczytaj komunikat, zanim zaczniesz działać. Nazywa on, które z trzech się skarży, a to już większa część odpowiedzi. Aby dalej poznawać podstawy, śledź kolejne materiały Bitbase Academy.
Powiązane artykuły
Inne artykuły Bitbase na ten temat:
- Opłaty w krypto: koszty, które naprawdę ponosisz
- Czym jest opłata za transakcję krypto?
- Krypto on-ramp vs off-ramp: na czym polega różnica?
- NAV ETF, premia/dyskonto i błąd odwzorowania
Zastrzeżenie: ten artykuł to treść edukacyjna Bitbase Academy, wyłącznie w celach informacyjnych. Nie stanowi porady inwestycyjnej, handlowej, podatkowej ani finansowej. Kryptoaktywa są zmienne — samodzielnie oceń ryzyko. Napisano w wrześniu 2026 r.; sprawdzaj aktualne oficjalne informacje.
Źródła
[1] ethereum.org, "Transactions" ethereum.org
[2] EIP-1559: Fee market change eips.ethereum.org
[3] go-ethereum, core/txpool/legacypool/legacypool.go github.com
[4] ethereum.org, "Nodes and clients" ethereum.org






