Account Abstraction Integration: Bundler & Paymaster with Pimlico
We often encounter this situation: a client wants to implement Account Abstraction (ERC-4337), but running their own bundler and writing a paymaster contract takes months and requires rare expertise. Pimlico solves this "out of the box" — managed infrastructure that handles validation, packaging, and submission of UserOperations, as well as gas sponsoring. With over 5 years in blockchain development and 50+ successful AA integrations, we ensure a smooth setup. Pimlico is one of the most reliable platforms with a claimed uptime of 99.9%.
Problems Pimlico Solves
Gas complexity for users. Without a paymaster, every user must have ETH to pay gas, which kills UX. Pimlico supports two modes: verifying paymaster (signed permission for sponsoring) and ERC-20 paymaster (gas paid in USDC). The latter keeps users within familiar tokens.
Need for network synchronization. A custom bundler requires understanding the ERC-4337 mempool, handling bundles, and retries. Pimlico abstracts this via a simple REST API — you just send a UserOperation, and the provider handles the rest.
Centralization risks. If you don't want to depend on a single provider, Pimlico offers Alto — an open-source bundler you can deploy yourself. We help set up both managed and self-hosted scenarios.
Why Pimlico is Better Than a Custom Bundler?
Developing a custom bundler costs $50,000–100,000 without considering ongoing support. Pimlico reduces this to $200–500 per month depending on load. You get an SLA of 99.9% and ready infrastructure. For example, a typical dApp processing 100k userOps per month saves $5,000–$10,000 monthly on infrastructure costs after switching to Pimlico.
| Criteria | Custom Bundler | Managed Pimlico |
|---|---|---|
| Time to launch | 2–4 months | 1–2 weeks |
| Maintenance complexity | High (monitoring, updates) | Zero (SLA 99.9%) |
| First-year cost | $50,000+ | From $2,400/year |
| Flexibility | Full control | API-limited but covers 95% of scenarios |
How We Set Up Pimlico
We use the standard stack: permissionless.js (TypeScript library for AA), viem for blockchain interaction, and the Pimlico API. Below is an example of creating a Safe-based smart account with paymaster sponsoring:
import { createSmartAccountClient } from "permissionless"; import { createPimlicoBundlerClient, createPimlicoPaymasterClient } from "permissionless/clients/pimlico"; import { createPublicClient, http } from "viem"; import { sepolia } from "viem/chains"; const publicClient = createPublicClient({ chain: sepolia, transport: http("https://rpc.ankr.com/eth_sepolia"), }); const bundlerClient = createPimlicoBundlerClient({ transport: http(`https://api.pimlico.io/v2/sepolia/rpc?apikey=${PIMLICO_API_KEY}`), entryPoint: ENTRYPOINT_ADDRESS_V07, }); const paymasterClient = createPimlicoPaymasterClient({ transport: http(`https://api.pimlico.io/v2/sepolia/rpc?apikey=${PIMLICO_API_KEY}`), entryPoint: ENTRYPOINT_ADDRESS_V07, }); Creating a smart account and sending a sponsored transaction:
import { signerToSafeSmartAccount } from "permissionless/accounts"; const safeAccount = await signerToSafeSmartAccount(publicClient, { signer: walletClient, entryPoint: ENTRYPOINT_ADDRESS_V07, safeVersion: "1.4.1", }); const smartAccountClient = createSmartAccountClient({ account: safeAccount, entryPoint: ENTRYPOINT_ADDRESS_V07, chain: sepolia, bundlerTransport: http(`https://api.pimlico.io/v2/sepolia/rpc?apikey=${API_KEY}`), middleware: { sponsorUserOperation: paymasterClient.sponsorUserOperation, }, }); const txHash = await smartAccountClient.sendTransaction({ to: "0xTarget", value: 0n, data: "0xCalldata", }); What Paymaster Types Does Pimlico Support?
Pimlico supports two main paymaster types:
| Type | How it works | When to use |
|---|---|---|
| VerifyingPaymaster | Signs a permission for UserOperation, gas fully sponsored | For bonuses, cashbacks, internal operations |
| ERC-20 Paymaster | User pays gas in USDC or other ERC-20 tokens | For mass usage, so users don't need ETH |
ERC-20 paymaster requires fetching token quotes (getTokenQuotes) and approving the token on the paymaster contract. Pimlico provides ready-made methods for this.
Integration Process
- Analysis — choose smart account implementation (Safe, Kernel, Biconomy) and paymaster type.
- Design — design architecture: which operations to sponsor, limits, fallback.
- Implementation — connect permissionless.js, configure Bundler and Paymaster, write tests.
- Testing — deploy on Sepolia/Goerli, test all scenarios (revert, gas shortage, spam).
- Deployment — switch to mainnet, set up monitoring (Tenderly, Etherscan).
How to Set Up Paymaster for Gas Sponsoring?
For sponsored transactions, the paymaster signs a permission for a specific UserOperation. In permissionless.js, this is done via middleware:
const sponsorResult = await paymasterClient.sponsorUserOperation({ userOperation: userOp, }); // Returns paymasterAndData (V0.6) or paymaster + paymasterData + gas limits (V0.7) What's Included in the Work
- Ready integration of Bundler and Paymaster with Pimlico.
- Selection and setup of smart account (Safe or Kernel).
- Configuration of sponsoring policies (limits, contract whitelist).
- Testnet testing with coverage of edge cases.
- Integration documentation for your team.
- Warranty: 2 weeks of post-release support.
Clients typically save $5,000–$10,000 per month after switching to Pimlico. The exact figure depends on transaction volume and number of chains.
Timelines and Pricing
Integrating a basic AA flow with Pimlico typically takes 1 to 2 weeks. We offer a turnkey solution — from analysis to deployment, all inclusive. Pricing is calculated individually based on the complexity of paymaster policies, number of supported chains, and documentation requirements. Contact us for a free project estimate and consultation on choosing the optimal plan.







