ГЛАВНАЯ / ИНСТРУКЦИИ / USEROPERATION ERC-4337 И ETHEREUM-ТРАНЗАКЦИЯ: В ЧЁМ РАЗНИЦА
UserOperation ERC-4337 и Ethereum-транзакция: в чём разница
В ERC-4337 пользователь подписывает UserOperation, а bundler может включить её в обычную транзакцию через EntryPoint. Поэтому у операции и включающей транзакции разные статусы и идентификаторы.
UserOperation описывает действие аккаунта, но не является обычной транзакцией
UserOperation содержит sender, nonce, calldata, параметры газа и подпись, интерпретация которой зависит от smart account. Клиент передаёт её bundler через совместимый RPC, а bundler проверяет возможность исполнения и оплаты.
После проверки bundler формирует Ethereum-транзакцию с вызовом EntryPoint. В одной такой транзакции могут обрабатываться несколько UserOperation. Следовательно, UserOperation hash и transaction hash относятся к разным объектам.
- UserOperation описывает намерение smart account и поля исполнения;
- транзакция bundler фиксирует on-chain вызов EntryPoint.
| Объект | Кто создаёт или отправляет | Где искать результат |
|---|---|---|
| UserOperation | Клиент smart account отправляет bundler | RPC или обозреватель с поддержкой ERC-4337 |
| Ethereum-транзакция | Bundler передаёт её в сеть | Обычный обозреватель блоков |
| Вызов аккаунта | EntryPoint вызывает sender | Детали исполнения включающей транзакции |
Принятие bundler ещё не означает подтверждённое исполнение
Bundler симулирует валидацию UserOperation и может отказать до отправки транзакции. Между предварительной проверкой и включением состояние сети способно измениться, поэтому операция может быть исключена или завершиться ошибкой.
Проверяйте статус UserOperation и затем включающую транзакцию в нужной сети. Успешный HTTP-ответ кошелька или принятие RPC-запроса подтверждают только этап обработки запроса, но не окончательный результат on-chain.
Сопоставьте аккаунт, EntryPoint и сеть
Используйте обозреватель или интерфейс, который понимает выбранную версию ERC-4337. Сверьте адрес sender, chain ID, EntryPoint, UserOperation hash и ссылку на транзакцию bundler. Для неуспешного действия сохраните текст ошибки и не отправляйте повторную операцию, пока не понята причина.
- откройте обозреватель нужной сети вручную;
- не повторяйте операцию, пока причина ошибки не установлена.
Частые вопросы
Есть ли у UserOperation обычный transaction hash?
У неё есть собственный идентификатор, а включающая её Ethereum-транзакция имеет отдельный transaction hash.
Может ли одна транзакция включить несколько UserOperation?
Да, bundler может собрать несколько операций в вызов EntryPoint.
Принятие bundler означает успех?
Нет. Это предварительная обработка. Проверьте включение и фактическое исполнение в сети.
Чек-лист: useroperation erc-4337 и ethereum-транзакция: в чём разница
- сверены сеть и chain ID;
- сохранены UserOperation hash и transaction hash;
- проверены sender и EntryPoint;
- ответ bundler не принят за подтверждение в блоке;
- проверен фактический результат исполнения.
Материал подготовлен редакцией сайта и проверен 9 октября 2026 года. Условия бирж, кошельков и блокчейн-сетей могут меняться. Перед операцией сверяйте данные в интерфейсе выбранного сервиса.