Smart Accounts in Relay - Relay
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Smart accounts unlock new design space in Relay’s cross-chain infrastructure. With them, we can:
- Batch multiple actions into one atomic call (e.g. deposit → call user wallet → mint NFT)
- Delegate tx execution to the user, preserving
msg.senderon the destination chain - Sponsor gas or use ERC-20s for fee payments
- Route logic across chains, bridging into EOAs that execute contract logic without a separate deployment
Relay supports two complementary standards for smart account execution:
ERC-4337
Relay uses ERC-4337 to support complex smart account flows. Key features include:
- Sponsored transactions using paymasters
- Arbitrary smart account validation logic
- Bundled execution: approve → swap → send, all in one tx
This is useful when you have smart accounts like Safe or Kernel, and interact via UserOperations.
EIP-7702
Relay uses EIP-7702 to enable EOAs to become smart accounts. We support 7702 to:
- Execute logic on destination chains where the user is
msg.sender
Useful for apps where the final contract cares about the actual sender (e.g. NFT mints, purchases)
- Preserve intent and gas delegation across chains
Our solver can bridge ETH or tokens to the user’s EOA, and the EOA can act as a smart wallet
- Avoid smart account setup on destination: the user’s EOA behaves like a contract temporarily, powered by an
authorizationListsignature
Why Smart Accounts Matter for Relay
Smart accounts let us overcome key limitations in a cross-chain solver system:
| Problem | Solved By |
|---|---|
msg.sender is solver, but the app needs it to be the user |
✅ ERC-4337 / 7702 |
| Want to batch calls after bridging ETH | ✅ ERC-4337 / 7702 |
| Want to pay gas from any chain or abstract fees entirely | ✅ ERC-4337 paymasters / 7702 signature logic |
| Want smart account functionality for your EOA | ✅ EIP-7702 |
For example, when someone uses ETH on Chain A to buy an NFT on Chain B:
- Relay bridges the ETH to their EOA
- That EOA uses a signed 7702 tx to batch logic on Chain B: approve → mint
msg.sender= the user, not Relay
This wasn’t previously possible because we couldn’t inject logic into EOAs without deploying a contract. Now we can.
Relay supports both 4337 and 7702. Whether you’re building gasless dApps, trustless UX, or bridging into smart behavior — smart accounts are the foundation. Let us know what you’re building.