Внедрение Pimlico для ERC-4337: Bundler и Paymaster под ключ
Мы часто сталкиваемся с ситуацией: клиент хочет внедрить Account Abstraction (ERC-4337), но запуск собственного bundler и написание контракта paymaster отнимает месяцы и требует редкой компетенции. Pimlico решает эту проблему «из коробки» — managed инфраструктура, которая берёт на себя валидацию, упаковку и отправку UserOperations, а также спонсирование газа. Наш опыт (5+ лет в блокчейн-разработке) показывает, что интеграция Pimlico сокращает time-to-market с полугода до пары недель. Pimlico — одна из самых надёжных платформ с заявленным uptime 99.9%.
Проблемы, которые решает Pimlico
Газовая сложность для пользователей. Без paymaster каждый юзер должен иметь ETH на оплату газа, что убивает UX. Pimlico поддерживает два режима: verifying paymaster (подписанное разрешение на спонсирование) и ERC-20 paymaster (оплата газа в USDC). Второй вариант позволяет удержать пользователя в привычных токенах.
Необходимость синхронизации с сетью. Собственный bundler требует понимания мемпула ERC-4337, обработки бандлов и повторных попыток. Pimlico абстрагирует это через простой REST API — вы просто отправляете UserOperation, а остальное делает провайдер.
Риски централизации. Если вы не хотите зависеть от одного провайдера, Pimlico предлагает Alto — open-source bundler, который можно развернуть самостоятельно. Мы помогаем настроить как managed, так и self-hosted сценарий.
Почему Pimlico выгоднее собственного bundler?
Разработка собственного bundler обходится в $50 000–100 000 без учёта поддержки. Pimlico снижает эти затраты до $200–500 в месяц в зависимости от нагрузки. При этом вы получаете SLA 99.9% и готовую инфраструктуру.
| Критерий | Самостоятельный bundler | Pimlico managed |
|---|---|---|
| Время запуска | 2–4 месяца | 1–2 недели |
| Сложность поддержки | Высокая (мониторинг, обновления) | Нулевая (SLA 99.9%) |
| Стоимость первого года | $50 000+ | От $2 400/год |
| Гибкость | Полный контроль | Ограничен API, но покрывает 95% сценариев |
Как мы настраиваем Pimlico
Мы используем стандартный стек: permissionless.js (TypeScript-библиотека для AA), viem для работы с блокчейном и Pimlico API. Ниже — пример создания smart account на базе Safe с paymaster-спонсированием:
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, }); Создание smart account и отправка спонсированной транзакции:
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", }); Какие типы paymaster поддерживает Pimlico?
Pimlico поддерживает два основных типа paymaster:
| Тип | Как работает | Когда использовать |
|---|---|---|
| VerifyingPaymaster | Подписывает разрешение на UserOperation, газ спонсируется полностью | Для бонусов, кэшбэка, внутренних операций |
| ERC-20 Paymaster | Пользователь оплачивает газ в USDC или других ERC-20 токенах | Для массового использования, чтобы юзеры не держали ETH |
ERC-20 paymaster требует получения курса токена (getTokenQuotes) и approve токена на контракт paymaster. Pimlico предоставляет готовые методы для этого.
Процесс интеграции
- Анализ — выбираем имплементацию smart account (Safe, Kernel, Biconomy) и тип paymaster.
- Проектирование — проектируем архитектуру: какие операции спонсировать, лимиты, fallback.
- Реализация — подключаем permissionless.js, настраиваем Bundler и Paymaster, пишем тесты.
- Тестирование — разворачиваем на Sepolia/Goerli, проверяем все сценарии (revert, нехватка газа, спам).
- Деплой — переключаем на mainnet, настраиваем мониторинг (Tenderly, Etherscan).
Как настроить Paymaster для спонсирования газа?
Для sponsored-транзакций paymaster подписывает разрешение на конкретный UserOperation. В permissionless.js это делается через middleware:
const sponsorResult = await paymasterClient.sponsorUserOperation({ userOperation: userOp, }); // Возвращает paymasterAndData (V0.6) или paymaster + paymasterData + gas лимиты (V0.7) Что входит в работу
- Готовая интеграция Bundler и Paymaster Pimlico.
- Выбор и настройка smart account (Safe или Kernel).
- Настройка политик спонсирования (лимиты, whitelist контрактов).
- Тестирование на testnet с покрытием кейсов.
- Документация по интеграции для вашей команды.
- Гарантия: 2 недели пост-релизной поддержки.
Оценка экономии
В среднем клиенты экономят от $5 000 в месяц на инфраструктуре после перехода на Pimlico. Точная цифра зависит от объёма транзакций и количества чейнов.Сроки и стоимость
Интеграция базового AA флоу с Pimlico, как правило, занимает от 1 до 2 недель. Стоимость рассчитывается индивидуально — зависит от сложности paymaster-политик, количества поддерживаемых чейнов и требований к документации. Закажите настройку Pimlico сегодня и получите консультацию по выбору оптимального тарифа.







