PenguinSwap
  • 🐧PenguinSwap Intro
  • Get Started
    • Create a Wallet
    • Get URC-20 Tokens
    • Using PenguinSwap without Centralized Exchanges
    • Connect Your Wallet to PenguinSwap
  • Click Here for Help
    • Troubleshooting Errors
    • General FAQ
    • Fixing Stuck Pending Transactions on BaseMeta
  • Contact Us
    • Business Partnerships
    • NFT Market Applications
    • Customer Support
    • Social Accounts & Communities
  • Roadmap
  • Brand & Logos
  • Products
    • 🔄Exchange
      • 🔃Token Swaps
      • How to Trade
      • Liquidity Pools
      • How to Add/Remove Liquidity
      • 📝Limit Orders
        • Limit Orders FAQ
      • ☮️Perpetual Trading
        • Perpetuals Glossary
        • What is Perpetual Trading?
        • How can I use it?
        • Perpetual Trading FAQ
    • ❄️Igloo Icing
      • How to use Igloo
      • How to use Igloo with UltronScan
    • 🍢Seafood Pools
      • How to Stake in Seafood Pools
      • Auto EGG Seafood Pool
      • Seafood Pool FAQ & Troubleshooting
    • 🌟Lottery
      • How to Play Lottery v2
      • Lottery FAQ
    • 📈Prediction
      • How to Use Prediction
      • Prediction FAQ
      • Prediction Troubleshooting
    • 🎃NFT Market
    • 🖼️NFT Profile System
      • How to Set Up an NFT Profile
      • Teams
    • ⛄IIO (Initial Igloo Offering)
      • How to Participate in an IIO
      • How to Participate in an IIO with UltronScan
      • Contract Details
    • Analytics (Info)
    • Voting
      • How to Vote
      • How to Vote with SafePal Wallet
    • Coming Soon
  • Tokenomics
    • 🥚EGG
      • EGG Tokenomics
      • Controlling EGG supply
  • Developers
    • Migration
      • Migrate Your Stakings
      • EGG Seafood Pool
    • Contributing
      • Codebase Overview
    • Bug Bounty
    • Smart Contracts
      • PenguinSwap v2
      • Router v2
      • Main Staking/Seafood Pool Contract
      • Prediction V2
      • Lottery v2
      • Auto EGG Seafood Pool (EggVault)
  • Hiring
    • Become a PEPE
      • Solidity Engineer
      • DevOps Engineer
      • Social Media Marketing Manager
      • Frontend Engineer
      • Blockchain QA Engineer
      • Communications/Public Relations Manager
      • Business Development Manager
Powered by GitBook
On this page
  • Issues on the Exchange
  • INSUFFICIENT_OUTPUT_AMOUNT
  • PenguinRouter: EXPIRED
  • Penguin: K
  • Penguin: TRANSFER_FAILED
  • Transaction cannot succeed
  • Price Impact too High
  • estimateGas failed
  • Cannot read property 'toHexString' of undefined
  • Execution reverted: TransferHelper: TRANSFER_FROM_FAILED.
  • Issues with Seafood Pools
  • URC20: burn amount exceeds balance
  • Out of Gas error
  • URC20: transfer amount exceeds allowance
  • URC20: transfer amount exceeds balance
  • Issues with Prediction
  • Other issues
  • Provider Error
  • Unsupported Chain ID
  • Already processing eth_requestAccounts. Please wait.
  • Issues buying SAFEMOON and similar tokens
  • Internal JSON-RPC errors
  • Error: [ethjs-query]
  • Issues with Profile
  • Oops! We couldn't find any Penguin Collectibles in your wallet.
  • Checking username keeps spinning
  1. Click Here for Help

Troubleshooting Errors

PreviousClick Here for HelpNextGeneral FAQ

Last updated 3 years ago

Sometimes you may find yourself facing a problem that doesn't have a clear solution. These troubleshooting tips may help you solve problems you run into.

Issues on the Exchange

INSUFFICIENT_OUTPUT_AMOUNT

The transaction cannot succeed due to error: PenguinRouter: INSUFFICIENT_OUTPUT_AMOUNT. This is probably an issue with one of the tokens you are swapping.

the transaction cannot succeed due to error: execution reverted: penguinrouter: insufficient_output_amount.

You're trying to swap tokens, but your slippage tolerance is too low or liquidity is too low.

  1. Refresh your page and try again later.

  2. Try trading a smaller amount at one time.

  3. Increase your slippage tolerance:

    a. Tap the settings icon on the liquidity page.

    b. Increase your slippage tolerance a little and try again.

  4. Lastly, try inputting an amount with fewer decimal places.

This usually happens when trading tokens with low liquidity.

That means there isn't enough of one of the tokens you're trying to swap in the Liquidity Pool: it's probably a small-cap token that few people are trading.

However, there's also the chance that you're trying to trade a scam token which cannot be sold. In this case, PenguinSwap isn't able to block a token or return funds.

INSUFFICIENT_A_AMOUNT or INSUFFICIENT_B_AMOUNT

Fail with error 'PenguinRouter: INSUFFICIENT_A_AMOUNT' or Fail with error 'PenguinRouter: INSUFFICIENT_B_AMOUNT'

You're trying to add/remove liquidity from a liquidity pool (LP), but there isn't enough of one of the two tokens in the pair.

Refresh your page and try again, or try again later.

Still doesn't work?

  1. Tap the settings icon on the liquidity page.

  2. Increase your slippage tolerance a little and try again.

The error is caused by trying to add or remove liquidity for a liquidity pool (LP) with an insufficient amount of token A or token B (one of the tokens in the pair).

It might be the case that prices are updating too fast when and your slippage tolerance is too low.

OK, so you're really determined to fix this. We really don't recommend doing this unless you know what you're doing.

There currently isn't a simple way to solve this issue from the PenguinSwap website: you'll need to interact with the contract directly. You can add liquidity directly via the Router contract, while setting amountAMin to a small amount, then withdrawing all liquidity.

Approve the LP contract

Head to the contract of the LP token you're trying to approve. For example, here's the UTG/WETH pair:

  1. Select Write Contract, then Connect to Web3 and connect your wallet.

  1. In section "1. approve", approve the LP token for the router by entering

    a. spender (address): enter the contract address of the LP token you're trying to interact with

    b. value (uint256): -1

Query "balanceOf"

  1. Switch to Read Contract.

  2. In 5. balanceOf, input your wallet address and hit Query.

  3. Keep track of the number that's exported. It shows your balance within the LP in the uint256 format, which you'll need in the next step.

Add or Remove Liquidity

Head to the router contract:

  1. Select Write Contract and Connect to Web3 as above.

  2. Find addLiquidity or removeLiquidity (whichever one you're trying to do)

  3. Enter the token addresses of both of the tokens in the LP.

  4. In liquidity (uint256), enter the uint256 number which you got from "balanceOf" above.

  5. Set a low amountAMin or amountBMin: try 1 for both.

  6. Add your wallet address in to (address).

  7. Deadline must be an epoch time greater than the time the tx is executed.

This can cause very high slippage, and can cause the user to lose some funds if frontrun

PenguinRouter: EXPIRED

The transaction cannot succeed due to error: PenguinRouter: EXPIRED. This is probably an issue with one of the tokens you are swapping.

Try again, but confirm (sign and broadcast) the transaction as soon as you generate it.

This happened because you started making a transaction, but you didn't sign and broadcast it until it was past the deadline. That means you didn't hit "Confirm" quickly enough.

Penguin: K

The transaction cannot succeed due to error: Penguin: K. This is probably an issue with one of the tokens you are swapping.

Try modifying the amount on “To” field. Therefore putting "(estimated)" symbol on “From”. Then initiate the swap immediately.

This usually happen when you are trying to swap a token with its own fee.

Penguin: TRANSFER_FAILED

The transaction cannot succeed due to error: execution reverted: Penguin: TRANSFER_FAILED.

Make sure you have 30% more tokens in your wallet than you intend to trade, or try to trade a lower amount. If you want to sell the maximum possible, try 70% or 69% instead of 100%. Caused by the design of Restorative Rebase tokens like tDoge or tBTC. Understand how restorative rebase tokens work.

Another possible cause of this issue is the malicious token issuer just suspended the trading for their token. Or they made selling action only possible for selected wallet addresses. Please always do your own research to avoid any potential fraud. If the token you are trying to swap but failed with this error code is coming from an airdrop, that is most likely a scam. Please do not perform any token approval or follow any links, your fund may be at risk if you try to do so.

Transaction cannot succeed

Try trading a smaller amount, or increase slippage tolerance via the settings icon and try again. This is caused by low liquidity.

Price Impact too High

Try trading a smaller amount, or increase slippage tolerance via the settings icon and try again. This is caused by low liquidity.

estimateGas failed

This transaction would fail. Please contact support

If you got this error while removing liquidity from a UTG pair:

Please select "Receive WUTG" and retry.

If you got this error while trying to swap:

Please contact the project team of the token you're trying to swap. **** This issue must be resolved by the project team.

This issue (while swapping) is caused by tokens which have hard-coded the V1 PenguinSwap router into their contract.

While this practice is ill-advised at best, the reason for these projects having done this appears to be due to their tokenomics, in which each purchase sends a % of the token to LPs.

The projects affected will likely not work with the V2 router: they will most likely need to create new versions of their tokens pointing to our new router address, and migrate any existing token holders to their new token.

We recommend that any projects which created such tokens should also make efforts to prevent their users from adding them to V2 LP.

The up-to-date router address is

Cannot read property 'toHexString' of undefined

"Unknown error: "Cannot read property 'toHexString' of undefined"

When trying to swap tokens, the transaction fails and this error message is displayed. This error has been reported on mobile devices using Trust Wallet.

  1. Attempt the transaction again with increased slippage allowance.

  2. If 1. does not resolve your problem, consider using another wallet such as SafePal for your transaction.

This usually happens when trading tokens with insufficient slippage allowance on Trust Wallet.

The exact details of the problem are still being investigated.

Execution reverted: TransferHelper: TRANSFER_FROM_FAILED.

The transaction cannot succeed due to error: execution reverted: TransferHelper: TRANSFER_FROM_FAILED.

When trying to swap tokens, the transaction fails and this error message is displayed. This error has been reported across platforms.

  1. Check to make sure you have sufficient funds available.

  2. Ensure you have given the contract allowance to spend the amount of funds you're attempting to trade with.

This error happens when trading tokens with insufficient allowance, or when a wallet has insufficient funds. If you're trading tokens with Restorative Rebase like tau assets tDoge or tBTC, make sure you understand how they work first with this guide to Rebase tokens.

Issues with Seafood Pools

URC20: burn amount exceeds balance

Fail with error 'URC20: burn amount exceeds balance'

You don't have enough SEAFOOD in your wallet to unstake from the EGG-EGG pool.

Get at least as much SEAFOOD as the amount of EGG that you’re trying to unstake.

  1. Buy SEAFOOD on the exchange. If you want to unstake 100 EGG, you need at least 100 SEAFOOD.

  2. Try unstaking again.

If that still fails, you can perform an “emergencyWithdraw” from the contract directly to unstake your staked tokens.

  1. Go to:

  2. In section “4. emergencyWithdraw”, enter "0" and click “Write”.

This will unstake your staked tokens and lose any uncollected EGG production.

This will lose any production that you haven’t harvested yet.

To stop this happening again, don’t sell your SEAFOOD. You still need it to unstake from the “Stake EGG Earn EGG” pool.

This error has happened because you have sold or transferred SEAFOOD tokens. SEAFOOD is minted in a 1:1 ratio to EGG when you stake in the EGG-EGG SEAFOOD Pool. SEAFOOD must be burned at a 1:1 ratio to EGG when calling leaveStaking (unstaking your EGG from the pool), so if you don't have enough, you can't unstake from the pool.

Out of Gas error

Warning! Error encountered during contract execution [out of gas]

You have set a low gas limit when trying to make a transaction.

Try manually increasing the gas limit (not gas price!) in your wallet before signing the transaction.

A limit of 200000 is usually enough.

The above example is from BaseMeta; check your wallet's documentation if you aren't sure how to adjust the gas limit.

Basically, your wallet (BaseMeta, Blube Pro, etc.) can't finish what it's trying to do.

Your wallet estimates that the gas limit is too low, so the function call runs out of gas before the function call is finished.

URC20: transfer amount exceeds allowance

Fail with error 'URC20: transfer amount exceeds allowance'

  1. Use Unrekt.net to revoke approval for the smart contract you're trying to interact with

  2. Approve the contract again, without setting a limit on spend allowance

  3. Try interacting with the contract again.

This happens when you set a limit on your spend allowance when you first approved the contract, then try to swap more than the limit.

URC20: transfer amount exceeds balance

Fail with error 'URC20: transfer amount exceeds balance'

You're probably trying to unstake from a Seafood Pool with low rewards in it. Solution below.

If not, you may be trying to send tokens that you don't have in your wallet (for example, trying to send a token that is already assigned to a pending transaction). In this case, just make sure you have the tokens you're trying to use.

Firstly, let the team know which pool you're trying to unstake from, so they can top up the rewards. If you're in a hurry to unstake and you don't mind losing your pending production, try an emergencyWithdraw:

You can perform an “emergencyWithdraw” from the contract directly to unstake your staked tokens.

  1. Find the contract address of the Seafood Pool you're trying to unstake from. You can find it in your wallet's transaction log.

  2. Select Write Contract.

  3. In section “3. emergencyWithdraw”, and click “Write”.

This will unstake your staked tokens and lose any uncollected yield.

This will lose any yield that you haven’t harvested yet.

This error tends to appear when you're trying to unstake from an old Syrup Pool, but there aren't enough rewards in the pool left for you to harvest when withdrawing. This causes the transaction to fail.

Issues with Prediction

Check

Other issues

Provider Error

Provider Error No provider was found

This happens when you try to connect via a browser extension like BaseMeta Wallet, but you haven’t installed the extension.

Unsupported Chain ID

Switch your chain to UltronGLow. Check your wallet's documentation for a guide if you need help.

Already processing eth_requestAccounts. Please wait.

Make sure you are signed in to your wallet app and it's connected to UltronGLow.

Issues buying SAFEMOON and similar tokens

To trade SAFEMOON, you must click on the settings icon and set your slippage tolerance to 12% or more. This is because SafeMoon taxes a 10% fee on each transaction:

  • 5% fee = redistributed to all existing holders

  • 5% fee = used to add liquidity

This is also why you might not receive as much of the token as you expect when you purchase. Read more on How to Buy Safe Moon.

Internal JSON-RPC errors

"BaseMeta - RPC Error: Internal JSON-RPC error. estimateGas failed removeLiquidityETHWithPermitSupportingFeeOnTransferTokens estimateGas failed removeLiquidityETHWithPermit "

Happens when trying to remove liquidity on some tokens via BaseMeta. Root cause is still unknown. Try using an alternative wallet.

Internal JSON-RPC error. { "code": -32000, "message": "insufficient funds for transfer" } - Please try again.

You don't have enough UTG to pay for the transaction fees. You need more URC-20 network UTG in your wallet.

Error: [ethjs-query]

Error: [ethjs-query] while formatting outputs from RPC '{"value":{"code":-32603,"data":{"code":-32000,"message":"transaction underpriced"}}}"

Increase the gas limit for the transaction in your wallet. Check your wallet's documentation to learn how to increase gas limit.

Swap failed: Error: [ethjs-query] while formatting outputs from RPC '{"value":{"code":-32603,"data":{"code":-32603,"message":"handle request error"}}}'

Cause unclear. Try these steps before trying again:

  1. Increase gas limit

  2. Increase slippage

  3. Clear cache

Issues with Profile

Oops! We couldn't find any Penguin Collectibles in your wallet.

We're investigating the logic behind this issue. Meanwhile please try the workaround.

  1. Go to “Collectible” page, then come back to profile page. If you can’t find the link, go to https://penguinswap.finance/collectibles directly.

  2. Retry profile creation.

Change the environment.

  • Clear the cache and retry.

  • Retry on different browser.

  • Retry on different wallet apps.

  • Retry on the different network (switch between Wi-Fi and cellular)

Checking username keeps spinning

There are two possible causes.

  1. You have multiple wallets installed on the browser.

  2. Network issue.

Root cause: You have multiple wallets installed on the browser. It may make a conflict between wallets. This is out of PenguinSwap's control and we can do nothing.

  1. Have only single wallet installed on browser, remove the others.

  2. Reconnect the wallet and retry setting username again.

Root cause: Network is unstable.

You have to retry.

  1. Delete whatever has been entered in the text field completely.

  2. Re-type username, then please wait for seconds.

  3. If it doesn’t work, reload the page and retry again.

Click “Connect to Web3” and connect your wallet.

Go to and in the search bar, enter the contract address.

Click “Connect to Web3” and connect your wallet.

Install the official browser extension to connect, or read our guide on

https://ultronscan.io/
how to connect a wallet to PenguinSwap