Skip to content

Gasless Transactions

General


Can the developers enable gasless transactions for any blockchain?

The gasless feature is available only for selected blockchains. See the complete list of supported blockchains for details.

Is a gas tank associated with one or more blockchain networks?

There can only be a single gas tank configured per blockchain network for every registered app.

Can the developer add a gas tank for any EVM-compatible supported chain that is configured in the Chain Management app settings?

No.

Refer to the supported chains where gas tanks can be set up to enable gasless transactions.

Can ERC20 tokens be used to deposit gas fees when setting up gas tanks?

No.

Only native cryptocurrency can be used to fuel gas tanks and deposit gas. In a future release, ERC20 tokens can also be used to set up and fill gas tanks for gasless operations in dApps.

Does the user wallet address get impacted when the gasless feature is enabled?

Yes. If the gasless feature is not enabled, each user account is only associated with the traditional EoA address. When gasless transactions are enabled for a blockchain, the user accounts are associated with an EoA and a SCW address. Learn more...

Do the user as well as the app developer need to be aware of both the EoA address and SCW address for blockchain networks that have gasless enabled?

Yes.

For whitelisted operations, the SCW address is used to sign the blockchain transactions. The gas fees are covered via the SCW account through the gas tank. Non-whitelisted functions require users to pay gas fees through the active account in Arcana wallet UI. Gasless-enabled apps default to the active SCW address, but users can switch between EoA and SCW addresses. If a user selects the EoA address while gas tanks are active, the transaction occurs via EoA, and the user covers the gas fee.

Developers need to ensure that they use the SCW address when issuing blockchain requests for app operations that are whitelisted. Also, developers must ensure that they use the EoA address for creating blockchain requests related to signing personal messages or exporting the private key. See EIP-4337 and EIP-1291 and user experiencefor details.

Which of the two addresses, EoA or SCW, is displayed in the Arcana wallet UI in the case of gasless transactions?

If the developer has set up the gas tank for the blockchain network, say network N, and also configured network N as the active network to be displayed in the wallet UI, then the wallet is enabled for gasless transactions on network N. The wallet UI will display the SCW address. Users can use the wallet UI to switch between the SCW and EoA addresses. However, they must use the SCW address for gasless transactions; switching to the EoA address incurs user gas fees. Gasless functionality is exclusive to SCW addresses.

If gas tanks aren't configured for the active blockchain, only the EoA address is shown in Arcana wallet UI.

Can the gasless feature be enabled later?

Yes, developers can seamlessly enable the gasless feature even later, after deploying the app on the Testnet or Mainnet. They can enable the gasless feature by setting up gas tanks for a blockchain network and it does not require app redeployment. However, note that this change affects the user's wallet address experience on blockchain networks with gas tanks.

If gas tanks are set up for the active network in the wallet, users will have both the EoA and an additional SCW address. Before enabling the gasless feature, users will only see the EoA address in the wallet UI. Once gasless is enabled, the SCW address becomes active instead of the EoA address and handles gas fees. Users can switch between EoA and SCW addresses through the wallet UI.

If a user switches to the EoA address, in this case even if the gas tanks are active, users will incur gas fees through the EoA account.

Users must ensure the SCW wallet address has sufficient crypto assets for transactions like token transfers. Gas fees for token transfers are covered by the SCW address.

Is disabling gasless possible once enabled?

Once a gas tank is established on a blockchain network, the user account becomes a dual-address gasless account, featuring both EoA and SCW addresses. This change is irreversible. However, developers can deactivate the gas tanks or they may run out of gas funds, resulting in users incurring gas fees. Once added, gas tanks cannot be deleted.

Can the gas tanks be paused if required?

Yes.

Developers can change the Enable Smart Account toggle setting in the Arcana Developer Dashboard and pause/resume the gas tank operations for the selected blockchain network in the context of an app.

For gasless apps which user address does the developer refer to, EoA or SCW or both?

When gasless is active on a blockchain network, the user account includes both EoA and SCW addresses, with gasless transactions exclusively supported through the SCW address.

Gasless adheres to the ERC-4337 account abstraction specification and ERC-1291 Signature Validation methods for contract addresses.

App developers should use EoA addresses for messages requiring personal signing or accessing user keys. All other blockchain transactions that are meant to be gasless should utilize the SCW address to ensure gas fees are covered for the user. For transferring tokens and digital assets, if a user deliberately chooses the EoA address via the wallet UI then any subsequent transaction will incur gas fees as they use the EoA address.

If a developer sets up a gas tank on network N, uses SCW address and then issues the transaction on a different network with no gas tank, why does the transaction fail?

This will not work and cause transaction errors. Only transactions issued using the SCW address on the network where gas tank is set up (network N in this case) will be gasless and successful if there are sufficient funds in the tank and the SCW wallet address.

If the developers set up a gas tank on network N and issue a transaction on Network G using the SCW address, they will see a transaction error due to a mismatch between the gasless network and the address. In this case, the network is wrong and SCW is not applicable for network G where a gas tank is not set up. User accounts on Network N will be gasless accounts with dual EoA and SCW addresses. For Network G only EoA is valid and hence you will see the blockchain transaction error. Transactions issued on the other network will not be gasless and can only use EoA addresses.

Will the transaction be gasless if the dev sets up a gas tank on network N, and uses EoA for issuing the blockchain transaction associated with the whitelisted operations?

No. EoA accounts on network N where the gas tank is set up and funded, will incur gas fees. Dev must use SCW accounts only to ensure gasless transactions.

MFA


Is the MFA feature supported with gasless transactions?

Yes.

MFA feature uses the EoA account address of the user. For blockchains where gas tanks are enabled, the gas user account is associated with dual addresses: an EoA and an SCW address. The MFA feature continues to use the EoA address.

Global Keys


Is the Global Keys feature supported along with gasless transactions?

Yes.

For those apps that enable gasless transactions and global keys features, the users will have the same EoA as well as the SCW addresses when using other apps integrated with the Arcana Auth SDK that have global keys enabled.

Private Keys


Are the user keys associated with EoA or SCW address in the case of gasless?

The user's keys are always associated with EoA, whether the gasless feature is enabled or not.

Gasless Standalone SDK


What are the high-level steps for using the Arcana Gasless (Standalone) SDK?

A. Use the Arcana Developer Dashboard to register the app and obtain a unique app identifier or Client ID.

B. Install and integrate with the Arcana Gasless (Standalone) SDK. During SDK initialization, provide the unique app identifier, standard EIP-1193 Ethereum provider exposed by the third-party browser-based wallet.

For details, refer to the sample-gasless-standalone code in the Auth Examples GitHub repo.

Does gasless transaction require developers to integrate the Web3 app with Arcana Gasless (Standalone) SDK and the appropriate Arcana Auth SDK plus companion SDKs depending upon the app type?

Not all use cases require installing and integrating with the Arcana Gasless (Standalone) SDK.

  1. Apps that require user onboarding and/or the Arcana wallet functionality in the app must install and integrate with the appropriate Arcana Auth SDK plus companion SDKs only. They do not need to install the Arcana Gasless (Standalone) SDK because the gasless feature is built-in the Arcana Auth SDK.

  2. Apps that do not require user onboarding and the Arcana wallet functionality, but wish to enable gasless feature in third-party browser-based wallets, are required to install and integrate with only the Arcana Gasless (Standalone) SDK.

  3. Multi-wallet apps that require user onboarding and/or Arcana wallet functionality in addition to enabling gasless for third-party wallets, must first install and integrate with the appropriate Arcana Auth SDK plus companion SDKs. This will enable gasless for the Arcana wallet and allow user onboarding via the Arcana Auth SDK. Next, they must install and integrate the app with the Arcana Gasless (Standalone) SDK to enable gasless transactions in other third-party browser-based wallets such as MetaMask.

Apps can directly install and integrate with the Arcana Gasless (Standalone) SDK without having to use the dashboard to configure gasless transactions?

No.

It is mandatory to configure gas tanks, deposit gas and whitelist app operations. This is required before gasless transactions can be enabled for the app user. If gas tanks are set up by the developer but not funded with crypto assets, then the gas fees will be paid directly via the user's SCW smart account. If there are insufficient funds to pay the gas fees in the SCW account, the transaction will fail.

Can multi-wallet apps integrating with the Arcana Auth SDK for accessing the embedded Arcana wallet configure gasless feature via the dashboard and then directly use the built-in gasless feature to enable gasless transactions across all supported wallets including third-party wallets?

No.

Multi-wallet apps can configure the gasless feature via the dashboard, then install and integrate with the appropriate Arcana Auth SDK plus companion SDKs. This will only enable gasless transactions for the Arcana wallet but not for the third-party browser-based wallets such as MetaMask. To enable that, developers must also install and integrate the app with the Arcana Gasless (Standalone) SDK. For details, refer to the Arcana Gasless (Standalone) SDK Usage Guide


Last update: January 3, 2024 by shaloo, shaloo