Best Account Abstraction Providers in 2026: ERC-4337 and EIP-7702 Compared

Joan Alavedra, Co-Founder at Openfort21 min read
Best account abstraction providers

TL;DR

Account abstraction vendors split into two groups: those that run their own bundler and paymaster, and those that ask you to bring URLs for both. Openfort, Alchemy, Biconomy, Pimlico, ZeroDev and Thirdweb run their own. Privy defaults to Pimlico's public bundler and asks you to configure a bundler and paymaster URL per network before production. Safe ships contracts and an SDK and is explicitly provider-agnostic. EntryPoint coverage differs too: Openfort publishes paymaster addresses for v0.6, v0.8 and v0.9; Alchemy's bundler supports v0.6, v0.7 and v0.8; Safe's 4337 module defaults to v0.6 and needs module version 0.3.0 for v0.7. EIP-7702 is the sharpest divide — most vendors support signing a delegation, but few publish which chains it runs on. Openfort publishes a per-chain Delegated column; Pimlico names its chains; the rest do not enumerate.

Last updated: September 13, 2026.

Account abstraction is two standards, not one, and most provider comparisons still treat it as a single checkbox. ERC-4337 runs smart accounts off-protocol through bundlers and paymasters. EIP-7702 upgrades an existing EOA in place. A provider can support one, both, or one of them only on chains it does not name.

This post compares eight account abstraction providers — Openfort, Privy, Alchemy, Biconomy, Pimlico, ZeroDev, Thirdweb and Safe — on the specifics that separate them: who operates the bundler, who operates the paymaster, which EntryPoint versions are live, and where EIP-7702 actually works. Every cell below is sourced to the vendor's own documentation or left blank.

What is account abstraction?

Account abstraction is the replacement of Ethereum's default account model — an externally owned account (EOA) controlled by exactly one private key — with an account whose rules are written in contract code. The account, not the protocol, decides who may sign, how gas is paid, which calls are permitted, and how access is recovered.

That shift is what makes four things possible: gas sponsorship (the user transacts without holding the native token), transaction batching (approve and swap in one signature), session keys (a scoped key that acts within limits you set, without a prompt per action), and recovery (losing a device is not losing the account).

ERC-4337 and EIP-7702 are different mechanisms

ERC-4337 implements account abstraction without changing the protocol. A smart account is a contract deployed at a new address. Transactions from it are UserOperation objects sent to a bundler, which validates them, packs them together, and submits them to an EntryPoint contract. A paymaster contract can pay the gas. Three moving parts, all off-protocol, all operated by someone.

EIP-7702 changes the protocol instead. The user signs an authorization that points their existing EOA address at contract code. The address does not change, nothing is permanently deployed, and the EOA keeps control. EntryPoint v0.8 added native support for 7702 delegation, which is why a provider's EntryPoint version and its 7702 support are the same question asked twice.

The practical difference for a product: 4337 is how you give a new user a smart account; 7702 is how you upgrade a user who already has an address and assets they will not migrate.

Quick comparison

ProviderRuns own bundlerRuns own paymasterEntryPoint versionsEIP-7702AA coverage per chainGas sponsorship modelSession keysSelf-hostable component
OpenfortYes — api.openfort.io/rpc/{chainId}Yes — paymaster addresses published per EntryPoint versionv0.6, v0.8, v0.9Yes — per-chain Delegated column publishedBundler, paymaster and sponsorship on the same published EVM list; Solana sponsored via fee-payer relayer, not 4337App pays (project balance) or user pays in ERC-20 / SPL; policy engine gates both; external paymasters supportedYes — on smart accounts and delegated accountsSigner (OpenSigner) and contracts open source
PrivyNo — defaults to Pimlico's public bundler; you register your own URL per networkNo — you register a paymaster URL per networkNot publishedSigns 7702 authorizations and type-4 transactions; delegation target is yours to choosePer network you configure, with bundler and paymaster URLs you supplySponsored only if a paymaster URL is set; otherwise the smart wallet needs native currencyNot publishedNot published
AlchemyYesYes — Gas Managerv0.6, v0.7, v0.8 (v0.6 deprecation planned for 2026)Yes — default mode of the Wallet APIs; only Modular Account v2 accepted as delegateChains served by Alchemy's bundlerGas Manager sponsorship policiesYes — ERC-6900 modules on Modular Account v2, with allowlists, ERC-20 and native spend limits, expiriesNot published
BiconomyYes — bundler.biconomy.ioYes — sponsorship and token paymaster on one URL, selected by modev0.7 (Nexus); v0.6 (older bundler and paymaster list)Yes, but routed to the Modular Execution Environment, not the 4337 bundlerSeparate published chain lists for Nexus (v0.7) and for bundlers and paymasters (v0.6)SPONSORED or ERC20 mode on the same paymaster URL; gas tank per project; self-hosted sponsorship URL supportedYes — Smart Sessions module (ERC-7579)Not published
PimlicoYes — and the bundler (Alto) is GPL-3.0 with a self-host guideYesv0.6, v0.7, v0.8Yes — eip7702Auth on eth_sendUserOperation and eth_estimateUserOperationGas; chains namedBundler and paymaster only; no wallet or auth layerVerifying and ERC-20 paymasters; sponsorship policiesNot part of the product — belongs to the account implementationYes — Alto bundler, self-host guide published
ZeroDevYes — ZeroDev RPC, with a ?provider= parameter to select the underlying bundlerYes — createZeroDevPaymasterClientv0.7 in the SDK quickstartYes — delegates to Kernel v3.3Bundler and paymaster RPC per project and chainPaymaster client with sponsorship policies; custom getPaymasterData hook for your own logicYesKernel contracts open source; infrastructure not published as self-hostable
ThirdwebYes — {chainId}.bundler.thirdweb.comYes — pm_sponsorUserOperation / pm_getPaymasterData on the bundler endpointv0.6 (default), v0.7 with a matching account factoryYes — executionMode: { mode: "EIP7702", sponsorGas: true }; default mode for API user and server walletsChains served by the thirdweb bundlersponsorGas flag; paymaster attached via EIP-5792 capabilities.paymasterService.url for external walletsYesNot published
SafeNo — SDK is provider-agnostic; guides use PimlicoNo — you supply paymasterUrl and paymasterAddressv0.6 by default (4337 module 0.2.0); v0.7 with module version 0.3.0Docs section published, still describing devnet and testnet availabilityContracts and module, on any chain where they are deployed and a third-party bundler runsisSponsored with your paymaster URL, address and optional policy id; ERC-20 paymaster requires the Safe to hold the fee tokenNot publishedYes — contracts and infrastructure are open source

A blank or "not published" cell means the vendor does not document it, not that the capability is absent. The table compares capability depth per chain, not chain totals: a vendor listing a hundred chains where only a third run its paymaster is not comparable to one shipping bundler, paymaster and 7702 against a single published list.

The EIP-7702 support matrix

This is where the category is thinnest. Nearly every vendor will sign a 7702 authorization. Almost none publish which chains it runs on, which contract the EOA delegates to, or which EntryPoint handles the resulting UserOperation.

ProviderDelegation targetEntryPoint for 7702Chains named in the docs
OpenfortOpenfort 7702 Contract Delegator (audited by Quantstamp, September 2025)v0.8 / v0.9 — delegated accounts require the latest EntryPointArbitrum One, Base, BNB, Ethereum, Optimism, Polygon POS
PimlicoYours — passed as eip7702AuthNot stated in the 7702 referenceEthereum mainnet and Sepolia, BSC mainnet, OP-Stack chains including Base, Optimism and Zora, Odyssey testnet
AlchemyModular Account v2 at 0x69007702764179f14F51cdce752f4f775d74E139 — all other delegation addresses rejectedv0.8 adds native 7702 delegationNot enumerated
ZeroDevKernel v3.3v0.7 in the SDK quickstartNot enumerated; docs name Sepolia in the example and say any 7702-compatible network works
ThirdwebNot statedNot statedNot enumerated
BiconomyNexus, via the Modular Execution EnvironmentNexus runs on v0.7; MEE handles the delegated pathNot enumerated
PrivyYours — Privy signs the authorization, you pick the implementationWhichever your AA provider usesNot enumerated
SafeNot statedNot statedDocs still describe devnet and testnet availability

Openfort publishes the delegation matrix as a column in its supported blockchains table, and every factory, account implementation and paymaster address on its entity addresses page. The EntryPoint addresses themselves are the canonical ones: v0.6 at 0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789, v0.8 at 0x4337084D9E255Ff0702461CF8895CE9E3b5Ff108, v0.9 at 0x433709009B8330FDa32311DF1C2AFA402eD8D009.

Openfort

Openfort runs its own 4337 bundler and its own paymasters. Both are reachable at the same endpoint — https://api.openfort.io/rpc/{chainId} — with a publishable key in the Authorization header, so the same URL serves as bundler and paymaster in a viem createBundlerClient / createPaymasterClient pair.

What is published and verifiable:

  • Bundler methods: eth_sendUserOperation, eth_estimateUserOperationGas, eth_getUserOperationReceipt, eth_getUserOperationByHash, eth_supportedEntryPoints.
  • EntryPoint versions: paymaster addresses for v0.6, v0.8 and v0.9, each smart account implementation listing the EntryPoint it targets.
  • Account types: EOA, smart account (ERC-4337) and delegated account (EIP-7702). Gas sponsorship, batching and session keys are available on the latter two; key rotation is supported on smart accounts and not under 7702. The full matrix is in account types.
  • EIP-7702 chains: Arbitrum One, Base, BNB, Ethereum, Optimism and Polygon POS carry the Delegated column.
  • Audits: five dated independent audits — CertiK (December 2023), Cure53 (September 2024), Omniscia (December 2024), Quantstamp on the 7702 Contract Delegator (September 2025) and Quantstamp on key management (October 2025). The signer, OpenSigner, is open source.

Gas sponsorship model: two modes, both gated by a policy engine. App pays bills sponsored gas to your project balance. User pays charges the end user in an ERC-20 on EVM chains or an SPL token such as USDC on Solana, at a live or fixed rate, and never debits your balance. Policies scope sponsorship by contract, function selector, value cap, chain and recipient allowlist, at either project scope (applies automatically) or transaction scope (requires an explicit policyId). External paymasters can be registered and linked to a policy. Details in gas sponsorship.

Solana: sponsorship works through a Kora fee-payer relayer rather than a paymaster. It is not ERC-4337, and Openfort's docs say so rather than counting Solana as an AA chain.

Limitations: EntryPoint v0.7 is not in the published paymaster set — Openfort ships v0.6, v0.8 and v0.9. Smart accounts and delegated accounts are EVM-only. Chain coverage is narrower than providers that resell a bundler they do not operate.

See Openfort vs Pimlico, Openfort vs Biconomy and Openfort vs Alchemy for the head-to-heads.

Privy

Privy is an embedded wallet and auth product with a smart wallet layer bolted on top of other people's account implementations. Its docs list the supported implementations as Alchemy, Kernel (ZeroDev), Safe, Biconomy, Thirdweb, and the Coinbase Smart Wallet.

The infrastructure question is answered directly in Privy's dashboard configuration docs: for each network you can optionally provide a bundler URL and a paymaster URL. If no bundler URL is set, Privy defaults to Pimlico's public bundler at https://public.pimlico.io/v2/{chainId}/rpc, and Privy recommends setting your own before production because the default is heavily rate limited. If no paymaster URL is set, the user's smart wallet must hold the network's native currency to pay gas.

EIP-7702: Privy supports the low-level interfaces — signing authorizations and sending type-4 transactions — so any 7702 implementation can be used. The delegation target, bundler and paymaster come from whichever AA provider you pair it with.

What this means in practice: Privy is a strong auth and embedded wallet layer, and its account abstraction is an integration surface rather than infrastructure Privy operates. If the AA layer is the part you care about, you are choosing a second vendor regardless.

Compare directly: Openfort vs Privy.

Alchemy

Alchemy runs its own bundler and its own paymaster (Gas Manager), and its bundler supports EntryPoint v0.6, v0.7 and v0.8. v0.6 has no fixed deprecation date, but Alchemy says deprecation is planned for sometime in 2026 and advises migrating to v0.7 or v0.8.

EIP-7702: Alchemy went further than most — 7702 delegation is the default mode of its Wallet APIs. Using an owner address directly with wallet_prepareCalls enables 7702 automatically, and the API accepts only 0x69007702764179f14F51cdce752f4f775d74E139 (Modular Account v2) as the delegation target; every other delegate address is rejected. Undelegation is a re-delegation to the zero address.

Session keys: Modular Account v2 supports session keys and WebAuthn validation as separate ERC-6900 modules, with allowlists, ERC-20 spend limits, native spend limits that account for gas, and expiries.

Limitations: the delegation target is fixed to Alchemy's own account, which is the trade-off for 7702 being the default path. Alchemy does not publish which chains carry 7702.

Compare directly: Openfort vs Alchemy.

Biconomy

Biconomy runs its own bundler (bundler.biconomy.io/api/v3/{chainId}/{key}) and its own paymaster, with sponsorship and token payment served from the same URL and selected by a mode parameter — SPONSORED checks eligibility and returns 0x if the operation cannot be sponsored; ERC20 returns data for the token paymaster.

Nexus, Biconomy's ERC-7579 modular account, runs on EntryPoint v0.7. The older bundler and paymaster chain list is a separate v0.6 list, and Biconomy's supported-networks page keeps the two apart.

EIP-7702 — read the caveat: Biconomy's ERC-4337 bundlers and paymasters work with Companion Accounts. For wallets delegating to Nexus under 7702, Biconomy directs you to its Modular Execution Environment, where the quote takes delegate: true and an authorization field. So 7702 support exists, but on a different execution path than the 4337 stack.

Session keys: Smart Sessions, an ERC-7579 module, with validation modules covering multisig, ECDSA ownership and ERC-7739 nested typed-data validation.

Sponsorship: per-project gas tank, activated in the dashboard, with an API key required on all requests. A self-hosted sponsorship URL with custom gas tanks is supported.

Compare directly: Openfort vs Biconomy.

Pimlico

Pimlico is the bundler and paymaster layer, sold as such. No wallets, no auth, no UI. It is also the only vendor here whose bundler you can run yourself: Alto is published under GPL-3.0 at pimlicolabs/alto with a self-host guide covering executor wallets, utility wallet refills, safe-mode validation against ERC-7562 rules, and the CLI flags for EntryPoints and RPC.

EIP-7702: supported by accepting an eip7702Auth object on eth_sendUserOperation and eth_estimateUserOperationGas (a dummy authorization is allowed for estimation), and submitting a type-4 set-code transaction with an authorization_list. The userOpHash depends on the delegate address, so the user signs over the authorization object. Pimlico names its 7702 chains: Ethereum mainnet and Sepolia, BSC mainnet, OP-Stack chains including Base, Optimism and Zora, and the Odyssey testnet.

EntryPoint: v0.7 and v0.8 take an unpacked UserOperation, with packing handled bundler-side per spec.

What you still need: an account implementation, a wallet layer, auth, and whatever sits above them. Pimlico is infrastructure for teams building infrastructure — which is exactly why other vendors, Privy's default configuration included, point at it.

Compare directly: Openfort vs Pimlico.

ZeroDev

ZeroDev runs bundler and paymaster RPCs per project at https://rpc.zerodev.app/api/v3/{project-id}/chain/{chain-id}, and its docs recommend sourcing both from the same provider because mixing a paymaster from one provider with a bundler from another is sometimes incompatible. A ?provider= query parameter selects the underlying bundler.

Kernel is the account: modular, ERC-7579, and the delegation target for 7702. The SDK quickstart uses getEntryPoint("0.7") and KERNEL_V3_3, with the authorization signed via walletClient.signAuthorization({ contractAddress: KERNEL_V3_3 }) and passed as eip7702Auth to createKernelAccount.

Gas sponsorship: createZeroDevPaymasterClient, with a getPaymasterData hook if you want your own sponsorship logic, and a self-funded ERC-20 paymaster for custom tokens.

Limitations: no embedded wallets, no auth — by design. You pair ZeroDev with a wallet provider and handle login yourself. ZeroDev does not publish a self-host path for its bundler or paymaster, though Kernel itself is open source.

Thirdweb

Thirdweb runs a bundler with integrated paymaster services at {chainId}.bundler.thirdweb.com, versioned in the path (/v2 recommended), exposing pm_sponsorUserOperation and pm_getPaymasterData plus a stub method for estimation without sponsorship.

EntryPoint: the TypeScript SDK's smartWallet defaults to v0.6 and supports v0.7 when passed a compatible account factory — either DEFAULT_ACCOUNT_FACTORY_V0_7 or your own.

EIP-7702: enabled with one config flag on in-app wallets — inAppWallet({ executionMode: { mode: "EIP7702", sponsorGas: true } }) — and it is the default execution mode for thirdweb API user and server wallets. For external wallets such as MetaMask, the same capabilities are reached through EIP-5792 sendCalls, with the paymaster attached via capabilities.paymasterService.url.

Limitations: account abstraction is one product among contracts, payments, storage, RPC and bridging. Thirdweb does not publish which chains carry 7702.

Compare directly: Openfort vs Thirdweb.

Safe

Safe is not an AA vendor in the same sense as the others: it ships contracts and an SDK, runs no bundler and no paymaster, and is explicitly provider-agnostic — its own ERC-4337 guides use Pimlico as the example provider and note that any ERC-4337-compatible provider works.

How 4337 works on Safe: through the Safe4337Module, which acts as both a Fallback Handler and a Safe Module, implements the 4337 interface, and is restricted to one EntryPoint address. It requires Safe v1.4.1 or newer and can be enabled at deployment or afterward.

EntryPoint versions: the Safe4337Pack defaults to module version 0.2.0, which is compatible only with EntryPoint v0.6. Passing safeModulesVersion: '0.3.0' gets you v0.7. The pack has not always validated that the chosen EntryPoint matches the module the loaded Safe uses, so verify the pairing yourself.

Sponsorship: set isSponsored and supply paymasterUrl, paymasterAddress and optionally a sponsorshipPolicyId. For an ERC-20 paymaster, the Safe must hold a balance of the fee token; the SDK encodes the approval internally.

EIP-7702: Safe maintains a docs section for it, but the published text still describes availability on devnets and testnets ahead of the Pectra upgrade.

Best for: shared treasuries and multisig custody, where Safe is the default and has been for years. Not the shortest path to consumer smart accounts.

Choosing between them

The decision reduces to three questions.

1. Do you want to operate the AA layer, or consume it? If you want to run it, Pimlico's Alto is the only self-hostable bundler here, and Safe's contracts are the only fully self-hostable account stack. If you want to consume it, the question becomes whose infrastructure you are actually consuming — which is the point of the bundler and paymaster columns above.

2. Do you already have wallets and auth? If yes, Pimlico or ZeroDev give you the AA layer and nothing you already own. If no, Openfort, Alchemy and Thirdweb bundle wallets, auth and AA in one SDK, and Privy bundles wallets and auth while pointing AA at someone else's stack.

3. Are you onboarding new users or upgrading existing ones? New users get ERC-4337 smart accounts. Users who already hold assets at an address they will not migrate need EIP-7702 — and there the question is not whether a vendor supports it, but whether they publish which chains it runs on. Most do not.

Detailed feature comparison

FeatureOpenfortPrivyAlchemyBiconomyPimlicoZeroDevThirdwebSafe
Operates its own 4337 bundlerYesNoYesYesYesYes, with a ?provider= overrideYesNo
Bundler endpoint publishedapi.openfort.io/rpc/{chainId}Yesbundler.biconomy.io/api/v3/{chainId}/{key}Yesrpc.zerodev.app/api/v3/{id}/chain/{id}{chainId}.bundler.thirdweb.com
Operates its own paymasterYesNo — you register a URLYes (Gas Manager)YesYesYesYesNo — you supply URL and address
EntryPoint v0.6YesNot publishedYesYes (older list)YesNot publishedYes (SDK default)Yes (module 0.2.0)
EntryPoint v0.7Not in published paymaster setNot publishedYesYes (Nexus)YesYes (SDK quickstart)Yes (with v0.7 factory)Yes (module 0.3.0)
EntryPoint v0.8YesNot publishedYesNot publishedYesNot publishedNot publishedNot published
EntryPoint v0.9YesNot publishedNot publishedNot publishedNot publishedNot publishedNot publishedNot published
EIP-7702 delegated accountsYesSigns authorizations; implementation is yoursYes — default mode of the Wallet APIsYes — via the Modular Execution EnvironmentYes — eip7702AuthYes — Kernel v3.3Yes — one config flagDocs describe devnet/testnet
7702 chain list publishedYesNoNoNoYesNoNoNo
Delegation target named7702 Contract DelegatorYoursModular Account v2 (only target accepted)NexusYoursKernel v3.3Not statedNot stated
Gas sponsorship: app paysYes — billed to project balanceOnly via your paymasterYesYes — gas tankYesYesYes — sponsorGasOnly via your paymaster
Gas sponsorship: user pays in ERC-20YesNot publishedNot publishedYes — ERC20 modeYes — ERC-20 paymasterYes — self-funded ERC-20 paymasterNot publishedYes — Safe must hold the fee token
Sponsorship gated by a policy engineYes — contract, selector, value cap, chain, recipient allowlistNot publishedYes — Gas Manager policiesYes — dashboard-activatedYes — sponsorship policiesYesNot publishedsponsorshipPolicyId passed to your paymaster
External / third-party paymaster supportedYesYour paymaster is the only paymasterNot publishedYes — self-hosted sponsorship URLNot applicableYes — custom getPaymasterDataYes — via EIP-5792 capabilitiesYes — provider-agnostic
Onchain session keysYesNot publishedYes — ERC-6900 modulesYes — Smart SessionsBelongs to the account implementationYesYesNot published
Embedded wallets in the same SDKYesYesYesNot publishedNoNoYesNo
Auth in the same SDKYesYesYesNot publishedNoNoYesNo
Solana fee sponsorshipYes — Kora fee-payer relayer, not 4337Not publishedNot publishedNot publishedNoNot publishedNot publishedNo
Open-source bundlerNoNot applicableNot publishedNot publishedYes — Alto, GPL-3.0Not publishedNot publishedNot applicable
Open-source signer / key managementYes — OpenSignerNot publishedNot publishedNot publishedNot applicableNot applicableNot publishedNot applicable
Self-host guide publishedSigner onlyNoNoSponsorship URL onlyYes — bundlerNoNoYes — contracts and infrastructure
Per-chain contract addresses publishedYesNot publishedDelegate address publishedNot publishedNot publishedKernel addresses in SDK constantsNot publishedDeployment repo published
Dated independent audits publishedYes — five, 2023–2025Not published hereNot published hereNot published hereNot published hereNot published hereNot published hereNot published here

"Not published here" means the claim was not verifiable from the documentation cited in this post — it is not a statement that no audit exists.

Account abstraction is infrastructure. The vendor you pick decides who answers the page when UserOperations stop landing, whose rate limits you inherit, and whether an existing user can be upgraded without changing address. Those are the columns worth comparing — not the chain count.

If you want bundler, paymaster, 4337 smart accounts and 7702 delegated accounts from one vendor, with per-chain addresses and audit dates published, start with the Openfort docs or the account abstraction overview.

Share this article

Related Articles

  1. Best Mass Payout and Global Payroll Platforms for Stablecoins

    Openfort, Triple-A, NOWPayments, BVNK, and Stripe compared on batch throughput, corridor coverage, fiat off-ramps, gas sponsorship, and compliance reporting.

  2. Wallet policy engines compared: Openfort, Privy, Turnkey, Fireblocks, Crossmint

    Spending limits, allowlists, session keys, enforcement point and audit-trail export compared across five wallet policy engines, on documented evidence.

  3. Key Management Solutions for Crypto Wallets: TEE vs MPC vs Shamir vs HSM

    A vendor-by-vendor comparison of non-custodial key management architectures — TEE, MPC, Shamir secret sharing, device enclaves and HSM — with every claim sourced from the vendor's own docs.

Ship your first wallet in minutes