Bundler Overview

The Bundler is a key component in the ERC-4337 Account Abstraction stack, responsible for collecting, validating, and bundling UserOperations (UserOps) into transactions that are submitted to the EntryPoint contract on the blockchain. In Alchemy’s Account Kit, the Bundler APIs provide direct access to our high-performance, scalable bundler infrastructure (powered by Rundler), enabling developers to interact with a production-grade ERC-4337 bundler for reliable on-chain submission of UserOps. These APIs are part of the @account-kit/infra library, allowing advanced customization when building smart wallet applications. They follow the standard ERC-4337 JSON-RPC endpoints and support versions v0.6 and v0.7 of the protocol, with optimizations for gas estimation, validation, and error handling to ensure UserOps land efficiently while protecting against attacks.

For full control, bring your own smart contracts or signers while leveraging Alchemy’s bundler for scalability. If you prefer a higher-level abstraction, use the Wallet APIs or aa-sdk instead.

What is the Bundler API?

The Bundler APIs are a collection of ERC-4337 compliant JSON-RPC endpoints which makes it possible for users to work with user operations. Below are the Bundler API endpoints available and the corresponding docs for each of them.

MethodDescription
eth_sendUserOperationSubmits a user operation to a Bundler. If the request is successful, the endpoint will return a user operation hash that the caller can use to look up the status of the user operation. If it fails, or another error occurs, an error code and description will be returned.
eth_estimateUserOperationGasEstimates the gas values for a user operation. It returns the [preVerificationGas], [verificationGasLimit], and [callGasLimit] values associated with the provided user operation.
eth_getUserOperationByHashReturns a user operation based on the given user operation hash. It returns the user operation along with extra information including what block/transaction it was included in. If the operation has not yet been included, it will return [null].
eth_getUserOperationReceiptReturns a user operation receipt ( metadata associated with the given user operation ) based on the given user operation hash. It returns [null] if the user operation has not yet been included.
rundler_maxPriorityFeePerGasReturns a fee per gas that is an estimate of how much users should set as a priority fee in UOs for Rundler endpoints.
eth_supportedEntryPointsReturns a list of Entrypoint contract addresses supported by the bundler endpoints.