Supported Networks
This list shows the blockchain networks that Portal supports for account abstraction.| Chain | Chain ID | Type |
|---|---|---|
| Ethereum | eip155:1 | Mainnet |
| Ethereum Goerli | eip155:5 | Testnet |
| Optimism Mainnet | eip155:10 | Mainnet |
| BSC Mainnet | eip155:56 | Mainnet |
| Gnosis Mainnet | eip155:100 | Mainnet |
| Polygon Mainnet | eip155:137 | Mainnet |
| opBNB Mainnet | eip155:204 | Mainnet |
| Optimism Goerli Testnet | eip155:420 | Testnet |
| Astar ZKEvm | eip155:3776 | Mainnet |
| Cyber Mainnet | eip155:7560 | Mainnet |
| Base Mainnet | eip155:8453 | Mainnet |
| Gelato OP Testnet | eip155:42069 | Testnet |
| Arbitrum One Mainnet | eip155:42161 | Mainnet |
| Arbitrum Nova | eip155:42170 | Testnet |
| Celo | eip155:42220 | Mainnet |
| Avalanche Fuji Testnet | eip155:43113 | Testnet |
| Avalanche C-Chain Mainnet | eip155:43114 | Mainnet |
| Celo Alfajores Testnet | eip155:44787 | Testnet |
| Linea Testnet | eip155:59140 | Testnet |
| Linea Mainnet | eip155:59144 | Mainnet |
| Polygon Mumbai Testnet | eip155:80001 | Testnet |
| Polygon Amoy Testnet | eip155:80002 | Testnet |
| Blast | eip155:81457 | Mainnet |
| Base Goerli Testnet | eip155:84531 | Testnet |
| Base Sepolia Testnet | eip155:84532 | Testnet |
| Arbitrum Goerli Testnet | eip155:421613 | Testnet |
| Arbitrum Sepolia Testnet | eip155:421614 | Testnet |
| Astar ZKatana Testnet | eip155:1261120 | Testnet |
| Astar zKyoto Testnet | eip155:6038361 | Testnet |
| Ethereum Sepolia | eip155:11155111 | Testnet |
| Optimism Sepolia Testnet | eip155:11155420 | Testnet |
| Polygon Blackberry | eip155:94204209 | Testnet |
| Cyber Testnet | eip155:111557560 | Testnet |
| OP Celestia Raspberry | eip155:123420111 | Testnet |
| Blast Sepolia | eip155:168587773 | Testnet |
| Degen Mainnet | eip155:666666666 | Mainnet |
| Arbitrum Blueberry | eip155:88153591557 | Testnet |
For Solana networks, account abstraction is supported through the use of the
feePayer field in transactions.Generating smart contract wallets for your users
Generating smart contract wallets for your users is incredibly easy with Portal.Step 1: Get access to the feature
Reach out to the Portal team to request access.Step 2: Create Clients with Account Abstraction
After Portal enables Account Abstraction for your organization, you are ready to create your first clients. This can be achieved by hitting the Create a new client endpoint with this as the request body:Step 3: Generate a Smart Contract Address!
Now that you have Account Abstraction enabled for your client, you can use the SDKs as you normally would to create a wallet, back it up, recover it, and sign. Since Account Abstraction is now enabled for the client, the address returned after creating a wallet is a smart contract address. With the completion of the above steps, you would have successfully created a client with Account Abstraction. Congratulations! :tada: You can now proceed to use the Portal SDKs and services as usual.The client’s smart contract wallet is only deployed upon their first successful
eth_sendTransaction request.The hash from signing with an Account Abstraction client is a user operation hash, not a transaction hash. Use tools like Jiffy Scan to explore user operations.
Clients using Account Abstraction require dApps they interact with to support EIP-1271 for verifying signed messages.
Configure Gas Subsidization Policy
Step 1: Modify Gas Subsidization Policy
In order to configure your Account Abstraction settings, log into the Portal Admin Dashboard. Navigate to the Settings page and scroll down to find the Account Abstraction Configuration section. In the section, you will find multiple rows corresponding to various chains for which you can set gas subsidization policies. To modify a policy, simply click on Edit Policy for the desired chain.Step 2: Confirm Policy Configuration
Once you have made your desired changes to the gas subsidization policies, ensure you verify and confirm the configurations. Contact our team for more information on billing. Congratulations! 🎉 You will now be sponsoring the gas fees for the client, based on the policies you have set and the chain the client is using.Controlling Gas Sponsorship Per Transaction
ThesponsorGas parameter allows you to opt out of gas sponsorship on a per-transaction basis when using Account Abstraction clients.
Parameter Behavior
| Value | Behavior |
|---|---|
| Unset (default) | Portal sponsors the transaction if AA is enabled and the chain is configured in your policies |
true | Portal sponsors the transaction if AA is enabled and the chain is configured in your policies (same as unset) |
false | Portal does not sponsor; the Portal client pays transaction fees |
Setting
sponsorGas: true or leaving it unset produces the same behavior - both will sponsor gas if your environment is configured for AA on that chain. Only sponsorGas: false changes the default behavior to disable sponsorship.When to Use This Parameter
The primary use case forsponsorGas is to disable sponsorship when you want users to pay for their own gas fees:
sponsorGas: false: Use when users should pay for their own gas, such as for testing, specific transaction types, or when you want to ensure the user has sufficient funds- Omit or
sponsorGas: true: Default behavior - Portal sponsors if AA is configured
Example: Disable Gas Sponsorship
The
sponsorGas parameter is available on both the /v1/assets/send and /v1/sign endpoints.