Gasless Transaction Errors
Web3 apps integrated with the Arcana Auth SDK and using the gasless transactions might encounter errors related to the gasless feature. Some of these errors may appear cryptic and the reason is not clear or enough for a speedy redressal by the app developers.
This guide contains a list of common errors encountered during gasless app operations. It also provides guidance on how Web3 app developers can debug gasless issues, identify the root cause and fix it. Alternately, they must gather all the required debugging data mentioned below, before reporting any gasless transaction issue to the Arcana support team.
|user0p execution failed||Insufficient funds in the wallet address|
|user0p execution failed||Contract execution error|
Refer to Biconomy Errors for a complete list of errors.
Debugging Gasless Errors
Arcana Network's gasless feature leverages the Biconomy SDK under the covers. The error handling for gasless transactions in the Arcana Auth SDK is limited by the error handling offered by the Biconomy SDK.
For example, you may see the following error for a gasless transaction:
Transaction reverted in simulation with reason: user0p execution failed. Use handle0psCallData to simulate transaction to check transaction execution steps.
The same error may be returned for more than one error conditions.
Sometimes, the error mentioned above occurs even if the developer has properly set up gas tanks, whitelisted contracts/functions, and there's enough gas for gasless transactions. In these cases, the issue is often that the user didn't have enough tokens in their wallet to complete the gasless token transfer, although the error message doesn't clarify this specific cause.
When encountering cryptic errors in Arcana Auth gasless transactions, developers should follow these steps to capture error data. Use Tenderly for simulating transactions to pinpoint the actual cause of failure.
Reporting Gasless Transaction Issues
When reporting gasless transaction errors in the app, developers should follow these steps to capture and share the error data using a browser inspector tool. You can use Tenderly for debugging or share the basic error data with us, which is crucial for resolving gasless transaction issues caused by Biconomy error handling limitations.
Gather Error Data
Collect Data: Bring up the inspector in the web app context, click Console and select the exception to view exception details and gather error data. Note the data and message fields as highlighted in the screenshot below.
Verify: In the Network tab of the Inspector, you will also see that the Biconomy bundler API call has returned a failure response. This ensures that you are looking at the correct error details.
Debug with Tenderly
Go to Tenderly and create a New Simulation. In addition to the error data gathered above, you will also need to provide the following details:
In the new simulation, specify the contract address as listed below:
This is the address of the EntryPoint for the Biconomy bundler used by the Arcana Auth backend subsystem that supports the gasless feature.
Select 'Enter raw input data' in the new simulation entry and provide the error data gathered earlier via the browser inspector Console.
After providing the gathered error data, run the simulation.
At the end of the simulation run, you can access the simulation log. Refer to the overview tab.
Scroll down the content until you see the warning icon. This simulation run warning is most likely the reason why the gasless transaction failed. If you hover over the yellow warning sign, you will see the real reason for the Biconomy error displayed as the error message. In this case it shows that there were insufficient funds in the wallet to carry out the send token gasless transaction.
That is all!
You can ask the Web3 app user to retry the transaction with sufficient funds using the app and the gasless transaction will go through!