Сети и комиссии

Поддерживаемые сети

В Vela встроено 12 сетей EVM:

СетьНативный токен комиссий
EthereumETH
BNB ChainBNB
PolygonPOL
ArbitrumETH
OptimismETH
BaseETH
AvalancheAVAX
GnosisxDAI
UnichainETH
TempoUSD
MonadMON
World ChainETH

У вашего кошелька один и тот же адрес во всех — значит, и делиться нужно одним адресом.

Можно также добавлять свои сети (Настройки → Сети). Поскольку Vela — кошелёк на смарт-аккаунте, в сети должны быть контракты, на которые он опирается: EntryPoint ERC-4337, контракты Safe и прекомпайл подписи P-256 (RIP-7212), который проверяет ваш passkey в блокчейне. Vela проверяет это автоматически, прежде чем позволить добавить сеть.

Как устроены комиссии (абстракция аккаунта)

Vela использует абстракцию аккаунта ERC-4337, поэтому транзакцию рассылаете не вы напрямую: это UserOperation, переданная релею, который отправляет её в блокчейн и получает компенсацию за газ. (В спецификации ERC-4337 эта роль называется bundler. У Vela она называется релеем, потому что делает больше, чем пакетирование: он сообщает комиссию «в канале» и обслуживает протокол газового аккаунта, описанный ниже, — и ни то, ни другое в стандарт не входит.) Отсюда следует несколько вещей:

  • Газ платится с баланса вашего собственного кошелька — по умолчанию в нативном токене сети (ETH, BNB, xDAI…) или в поддерживаемом стейблкоине там, где релей его предлагает; актив комиссии вы выбираете на экране подтверждения. У Tempo нет нативной монеты, поэтому там газ всегда рассчитывается в долларовых стейблкоинах. Никакого paymaster из ERC-4337, который бы спонсировал — или блокировал — каждую транзакцию, здесь нет. (Разовую активацию газового аккаунта Vela может взять на себя для новых пользователей; это отдельная история, о ней ниже.)
  • Цену газа называет релей — он единственный источник истины, а кошелёк показывает именно эту цену и подписывает ровно то, что показал. Выбора скорости нет: каждая транзакция отправляется с высоким приоритетом.
  • Итог — это сетевая стоимость плюс сервисная комиссия релея, с небольшой минимальной суммой на очень дешёвых транзакциях. Цена релея и есть цена — отдельного тарифного справочника не существует. Часть уходит валидаторам сети; остальное — релею, который авансирует газ и держит инфраструктуру.
  • Экран подтверждения показывает оценочную комиссию в активе комиссии и в вашей валюте отображения до подписи. Названная сумма и её получатель входят в то, что вы подписываете, поэтому релей получает ровно столько, сколько было показано: изменённое число сделало бы вашу подпись недействительной.

Кто держит релей — и кому достаются комиссии

Каждая сеть указывает на релей. По умолчанию это собственный релей Vela, а эндпоинт можно заменить в Настройки → Дополнительно → Сервисные эндпоинты. Один эндпоинт действует на все встроенные сети; пользовательская сеть сохраняет тот адрес релея, который вы указали при её добавлении.

Честная оговорка про совместимость: приложение получает комиссию через специфичный для Vela метод RPC (vela_getInBandGasQuote), и без него отправка не проходит. Значит, эндпоинт, на который вы указываете, должен работать на vela-relay — инстансе Vela или вашем собственном. Обычный бандлер ERC-4337 вроде Pimlico или Alchemy этот метод не реализует, поэтому в текущем релизе сквозной сценарий с ним не заработает.

Кто держит релей для сети, тот и получает комиссии этой сети — наценку релея на каждой транзакции и депозит за активацию газового аккаунта. Поднимите свой vela-relay — и эти комиссии будут кормить вашу инфраструктуру, а не инфраструктуру Vela; с трафика, который вы направили в другое место, Vela не берёт ничего.

Активация газового аккаунта (Vela Relay)

На релее Vela ваша первая транзакция в каждой сети активирует выделенный газовый аккаунт. Сначала приложение просит казну релея профинансировать это за вас — всё происходит тихо внутри процесса отправки, и спонсируемый кошелёк вообще не видит экрана пополнения. И только если в спонсировании отказано, приложение показывает запрос на пополнение: вы отправляете небольшую сумму нативного токена на показанный адрес газового аккаунта, а оно объясняет, почему спонсирования не случилось.

Комиссию за активацию вы платите сами, когда бесплатного спонсирования нет, а именно когда:

  • Казна Vela для этой сети пуста или на исходе — свободный фонд на этой сети временно исчерпан.
  • Вы израсходовали бесплатный лимит — спонсирование ограничено на кошелёк, и после первых нескольких раз оплата на вас.
  • Релей Vela вообще не финансирует эту сеть — например, свои или тестовые сети, которые вы добавили сами: казны для них у Vela нет. (Направьте их на свой релей, если хотите вовсе обойтись без активации.)

Депозит за активацию не возвращается: это стартовый баланс аккаунта релея, который со временем пополняется из возвратов за газ, но всё равно может израсходоваться и потребовать повторной активации. Адрес релея также может смениться при обновлении сервиса — тогда нужна новая активация.

Комиссия списывается с вашего баланса в выбранном активе комиссии — по умолчанию в нативном токене. Если отправка заблокирована из-за газа, значит вашего баланса в этом активе не хватает на комиссию; там, где релей предлагает газ в стейблкоине, смена актива комиссии на экране подтверждения может разблокировать отправку.

Когда вы отправляете максимальную сумму нативного токена, Vela автоматически резервирует достаточно на газ, чтобы транзакция не сорвалась.

Как Vela общается с каждой сетью

Vela читает балансы и отправляет транзакции через пул RPC-эндпоинтов, а не через одного провайдера. Она собирает эндпоинты из нескольких источников, оценивает их по задержке и надёжности и автоматически переключается, когда какой-то тормозит или лежит, временно отправляя плохие на скамейку, — так что один капризный узел никогда не кладёт приложение целиком.

Дальше: как работают passkey.