Using ZeroDev with Gelato
Gelato's has a unique approach to handling transaction fees without the need for an EntryPoint deposit or an on-chain paymaster. Instead, transaction fees are settled post-execution via 1Balance across all supported networks, ensuring accurate charging of gas consumed without necessitating per-chain user deposits.
For a deeper understanding of Gelato's capabilities, refer to their comprehensive documentation.
ZeroDev SDK with Gelato
Integrating Gelato with our SDK necessitates specific configurations, diverging from conventional bundler setups due to Gelato's distinct fee management mechanism.
Essential Configurations
- Omit Paymaster: Unlike other services, Gelato's transactions are sponsored without specifying a paymaster. Thus, your account will directly bear the gas fees incurred through Gelato's operations.
const kernelClient = createKernelAccountClient({
account,
chain,
bundlerTransport: http(process.env.BUNDLER_RPC),
// The following is omitted for Gelato integration:
// paymaster: {
// getPaymasterData: (userOperation) => {
// const zerodevPaymaster = createZeroDevPaymasterClient({
// chain,
// // Get this RPC from ZeroDev dashboard
// transport: http(PAYMASTER_RPC),
// })
// return zerodevPaymaster.sponsorUserOperation({
// userOperation,
// })
// }
// }
})