many people are interested in this and this is not specific to Base, but rather a topic to be addressed for all EVM chains. it is discussed every once in a while
I haven’t seen any implementation of this yet, but I am also curious if somebody has taken a deeper look into this topic and can share experiences and findings.
I have talked to @hpeebles about this topic quite some time ago, not sure if he went further down the road.
On the gas side: I know the evm-rpc-canister exposes fee history. My issue is slightly different: when I manually craft and sign a USDC transaction externally and broadcast it, I can overpay a little and it reliably goes through.
But when I try to do the same flow from the wallet canister itself, the canister has ETH balance but I don’t see how it can actually broadcast the signed transaction with the right gas parameters. Basically:
Externally → I can pay the fee from a hot wallet and submit → tx is mined.
From canister → it “has ETH”, but how do I actually push that signed tx out onto the network via the rpc canister?
So the gap for me is: how to go from “wallet canister holds ETH + has the tx data” → to “transaction gets propagated with the right gas and fee handling” without relying on an external broadcaster.
With onesec.to, the gas fees on Base is handled automatically, when you bridge USDC/ICP out of the IC. As opposed to ckUSDC, which requires you to hold ckETH at the time and can only bridge to Ethereum and not Base.
I went through the OneSec docs and saw how the flow works with threshold ECDSA signing on ICP + HTTP outcalls (and relayers) to broadcast raw transactions on the EVM side. I also noticed the emphasis on consensus across multiple RPCs for reliability.
What I’d love to understand more clearly is the gas abstraction piece you mentioned: when bridging to Base, how exactly is the transaction fee handled under the hood? From the docs I can see how signing and broadcasting are managed, but I didn’t see a detailed breakdown of whether this is done via pre-funded relayers, a fee-pool model, or some other standard.
when bridging out, no need for ckETH, the gas fees is included in the fees when bridging and taken from the token you’re bridging out with
when bridging in, you can use onesec forwarding address, npm package, it derives an EVM address associated to your ICP principal, anything you send to this address gets forwarded to the IC, the gas fees is also sponsored and taken as a fee between your EVM forwarding address and the IC
I’ve successfully implemented automatic USDC transfers on Base via ICP, where the admin pays gas fees in ETH, making transfers seamless for users. Now, users only need to enter the USDC amount—they don’t worry about gas.
Key highlights:
Gasless user experience: Users can transfer USDC to others without paying gas.
EIP-3009 powered: Transfers use gasless authorization signatures for security and efficiency.
EIP-1559 prepared transactions: Admin covers ETH fees while transactions are prepared with EIP-1559 for smooth execution.
Admin sends gas to a payment master (a treasury canister): This ensures transaction costs are automatically covered.
Potential errors: If the payment master/treasury dries up and can’t cover gas, transactions will fail with an “insufficient funds” error.
This setup combines ICP canisters, meta-transaction patterns, and gasless UX to deliver a seamless DeFi experience. The next step is expanding this pattern for more tokens and chains!