> For a complete page index, fetch https://docs.conduit.xyz/llms.txt # Enable Bundler on your Chain > Learn how to install and use Conduit's Bundler. Step-by-step guide covering installation, supported RPC methods, contract addresses, and how to send UserOperations on your rollup. ## Installing the Conduit Bundler #### Sign in Log in to the [Conduit app](https://app.conduit.xyz) #### Access Marketplace In your chain dashboard, go to the `Marketplace` section, and find `Conduit Bundler` in the one-click installation section. #### Install Integration Click `Install integration` on the right side and wait for the Conduit Bundler to complete installation. > **Note** > > When deploying a bundler through the **Conduit UI**, support for EntryPoint **v0.8 and v0.9** is automatically configured.\ > For existing mainnet deployments, newer EntryPoint versions may be enabled on request depending on the configuration. ## General Information ### Bundler URL & Supported RPC Methods Once deployed, your bundler URL will be available at `https://bundler-{YOUR_NETWORK_SLUG}.t.conduit.xyz/`. `APIKEY` might be not present or required depending on the configuration. Our bundler supports all `eth`-namespaced RPC methods as specified in ERC-4337 including: * `eth_chainId` * `eth_supportedEntryPoints` * `eth_estimateUserOperationGas` * `eth_sendUserOperation` * `eth_getUserOperationByHash` * `eth_getUserOperationReceipt` ### Contracts #### Entrypoint Conduit Bundler supports the following ERC-4337 EntryPoint versions: | Version | Address | | ------- | -------------------------------------------- | | v0.9 | `0x433709009B8330FDa32311DF1C2AFA402eD8D009` | | v0.8 | `0x4337084D9E255Ff0702461CF8895CE9E3b5Ff108` | | v0.7 | `0x0000000071727De22E5E9d8BAf0edAc6f37da032` | EntryPoint `0.6.0` is not supported. > **Note** > > EntryPoint **v0.9 is ABI-compatible with v0.7 and v0.8**, but introduces behavioral changes (e.g., paymaster flows and `initCode` handling).\ > Note: **signing semantics changed starting in v0.8** (EIP-712 typed data).\ > If your stack previously relied on v0.7 assumptions, review the migration notes below. #### Safe Integration The following two modules are compatible with Entrypoint `0.9.0` and are deployed with the Conduit bundler integration. | Contract | Address | | --------------------------------- | -------------------------------------------- | | Safe4337Module (version `0.3.0`) | `0x75cf11467937ce3F2f357CE24ffc3DBF8fD5c226` | | SafeModuleSetup (version `0.3.0`) | `0x2dd68b007B46fBe91B9A7c3EDa5A7a1063cB5b47` | For turning your Safe wallet into a 4337-compatible smart account, see the [Safe documentation on ERC-4337](https://docs.safe.global/advanced/erc-4337/4337-safe). #### Other Contracts | Contract | Version | Address | | ---------------------------------- | ------- | -------------------------------------------- | | SimpleAccountFactory | v0.9 | `0xAD07bbb7bEA77E323C838481F668d22864e9F66E` | | SimpleAccountFactory | v0.8 | `0x13E9ed32155810FDbd067D4522C492D6f68E5944` | | SimpleAccountFactory | v0.7 | `0x0ACDDd4868E24aad6A16573b416133F58795A916` | | Simple7702Account (implementation) | v0.9 | `0xa46cc63eBF4Bd77888AA327837d20b23A63a56B5` | | Simple7702Account (implementation) | v0.8 | `0x4Cd241E8d1510e30b2076397afc7508Ae59C66c9` | | TestCounter | — | `0x475d5a5B128c1846b86493b357e75E27201447B7` | ## EntryPoint Version Notes If your stack previously used **EntryPoint v0.7**, newer versions introduce several improvements. ### v0.8 Improvements * UserOperation hashing uses **EIP-712 typed data** * Native **EIP-7702 authorizations support** is added to the Entrypoint contract * Improved unused gas penalty behavior * `senderCreator()` helper for factory validation ### v0.9 Improvements * **Parallelizable paymaster signatures** via `paymasterSignature` * **Block-range validity windows** using `validAfter` / `validUntil` (block ranges are signaled via a top-bit flag) * Improved diagnostics via: * `getCurrentUserOpHash()` * `IgnoredInitCode` * `EIP7702AccountInitialized` ### Important behavioral changes Developers migrating from older versions should be aware of the following: * **UserOperation signing changed in v0.8** (EIP-712 typed data) * Accounts must be created through **UserOperation `initCode`**. `SimpleAccountFactory.createAccount()` can't be used directly and can only be called by **SenderCreator** * Paymaster signature handling changed in v0.9 (`paymasterSignature` flow); malformed `paymasterData` / signature conventions may be rejected Even though **v0.9 maintains ABI compatibility**, bundlers and mempools must understand the updated semantics for UserOperations to be accepted. > **Note** > > For more details, refer to release notes below : > > v0.9 - [release note](https://github.com/eth-infinitism/account-abstraction/releases/tag/v0.9.0) > > v0.8 - [release note](https://github.com/eth-infinitism/account-abstraction/releases/tag/v0.8.0) ## Sending UserOperations Use this three-step flow to handle dynamic `preVerificationGas` (PVG) networks and reliably submit UserOperations. #### Estimate gas Call `eth_estimateUserOperationGas` with your UserOperation. You can set `preVerificationGas` to `0x0` or omit it during estimation. ```bash curl -s -X POST -H "Content-Type: application/json" \ --data '{ "jsonrpc": "2.0", "id": 1, "method": "eth_estimateUserOperationGas", "params": [ { "sender": "0x29657e08ba8c384c6e634149db8fb4e64ce29225", "nonce": "0x845adb2c711129d4f3966735ed98a9f09fc4ce5700000000000000000000", "callData": "0xe9ae5c53...", "callGasLimit": "0x238c", "verificationGasLimit": "0x462d8", "preVerificationGas": "0x0", "maxPriorityFeePerGas": "0xf4240", "maxFeePerGas": "0x1250f8", "factory": "0x2577507b78c2008ff367261cb6285d44ba5ef2e9", "factoryData": "0xea6d13ac...", "paymaster": "0xcb3871f1f320cd057a4170be2c15fee812919939", "paymasterVerificationGasLimit": "0x5033", "paymasterPostOpGasLimit": "0x0", "paymasterData": "0x00000000...", "signature": "0xc5c3ba33..." }, "0x0000000071727De22E5E9d8BAf0edAc6f37da032" ] }' \ "$RPC_URL" ``` Example response: ```json { "jsonrpc": "2.0", "id": 1, "result": { "preVerificationGas": "0xd8f0", "verificationGasLimit": "0x...", "callGasLimit": "0x...", "paymasterVerificationGasLimit": "0x..." } } ``` #### Add a buffer Since PVG is dynamic on DA-enabled networks, add a 10–20% buffer to account for price changes between estimation and submission. > **Note** > > If the estimated PVG is `55,000` wei, a 20% buffer is `66,000` wei. Decimal > `66,000` = Hex `0x101d0`. #### Submit with updated PVG Resubmit the UserOperation using `eth_sendUserOperation` with the updated `preVerificationGas` (including your buffer). ```bash curl -s -X POST -H "Content-Type: application/json" \ --data '{ "jsonrpc": "2.0", "id": 1, "method": "eth_sendUserOperation", "params": [ { "sender": "0x29657e08ba8c384c6e634149db8fb4e64ce29225", "nonce": "0x845adb2c711129d4f3966735ed98a9f09fc4ce5700000000000000000000", "callData": "0xe9ae5c53...", "callGasLimit": "0x238c", "verificationGasLimit": "0x462d8", "preVerificationGas": "0x101d0", // your updated pre verification with buffer "maxPriorityFeePerGas": "0xf4240", "maxFeePerGas": "0x1250f8", "factory": "0x2577507b78c2008ff367261cb6285d44ba5ef2e9", "factoryData": "0xea6d13ac...", "paymaster": "0xcb3871f1f320cd057a4170be2c15fee812919939", "paymasterVerificationGasLimit": "0x5033", "paymasterPostOpGasLimit": "0x0", "paymasterData": "0x00000000...", "signature": "0xc5c3ba33..." }, "0x0000000071727De22E5E9d8BAf0edAc6f37da032" ] }' \ "$RPC_URL" ``` > **Note** > > If submission is delayed or conditions change, re-run estimation to refresh > PVG before sending. ## Repository You can find the Conduit Bundler repository [here](https://github.com/conduitxyz/account-abstraction). This repository includes scripts to create a SimpleAccount, fund it, and send a test transaction. > Learn how to install and use Conduit's Bundler. Step-by-step guide covering installation, supported RPC methods, contract addresses, and how to send UserOperations on your rollup.