What is EIP-7702?
EIP-7702 allows Externally Owned Accounts (EOAs) to delegate their execution logic to smart contracts. When an EOA signs an authorization, it temporarily gains smart account capabilities without changing its address.Supported Operations
EIP-7702 accounts work with all OneBalance transaction types:- Swaps: Cross-chain token exchanges with automatic bridging
- Transfers: Send assets across chains to any address
- Contract Calls: Execute smart contract functions with call data
Key Concept: Delegation vs Deployment
EIP-7702 Accounts (Delegation):- EOA signs authorization to delegate to smart contract implementation
- Address remains unchanged - no migration needed
- Delegation happens when first transaction is needed
- New smart contract deployed with predicted address
- Requires address migration from existing EOA
- Deployment happens when account is created
Integration Flow
OneBalance implements EIP-7702 through a clear process:1
Prepare Quote
Call prepare-call-quote to analyze your requirements and get delegation objects if needed
2
Sign Delegations
Sign any delegation objects using viem’s
signAuthorization
method3
Get Quote
Submit signed delegations to call-quote to get the executable quote
4
Execute
Execute the quote using execute-quote to perform the cross-chain operation
OneBalance handles delegation automatically. If your EOA is already delegated on a chain, no additional signing is required.
How EIP-7702 Works
When you configure an EIP-7702 account with OneBalance:- Account Configuration: Set
deploymentType: "EIP7702"
and use your EOA address for bothsignerAddress
andaccountAddress
- Smart Contract Implementation: OneBalance uses Kernel 3.3 as the delegation target
- Automatic Delegation: When needed, OneBalance generates authorization objects for you to sign
- Execution: Your EOA temporarily gains smart account capabilities during the transaction
Example: Account Configuration
- Source chain: Always required for spending operations (swaps, transfers, contract calls)
- Destination chain: Only required for contract calls (not for swaps or transfers)
When to Use EIP-7702
Choose EIP-7702 when you want to preserve existing EOA addresses:- Existing EOA users: No address migration needed
- Embedded wallets: Upgrade EOAs to smart account capabilities
- Address preservation: Keep on-chain history and familiar addresses
- Resource Locks (requires managed key infrastructure)
- Custom account implementations beyond Kernel v3.3
EIP-7702 uses the same ERC-4337 infrastructure (bundlers, paymasters, UserOps) but extends it to work with existing EOA addresses. Learn more about Account Types.
Current Limitations
OneBalance’s EIP-7702 implementation works for most scenarios but has one constraint: Multi-Input Limitation: When you have assets on more than 1 source chain different from the destination chain, you’ll need to use a manual delegation workaround.Example Assets | Destination | Result |
---|---|---|
USDC on Optimism | Arbitrum | ✅ Single transaction |
USDC on Optimism + Arbitrum | Arbitrum | ✅ Single transaction |
USDC on Optimism + Base | Arbitrum | ⚠️ Needs workaround |
Cross-Chain Funding with Solana
EIP-7702 accounts can be funded using Solana assets for cost efficiency and expanded liquidity access:Solana + EIP-7702
Fund EIP-7702 contract calls using SOL or USDC from Solana
Solana Examples
Complete working examples of cross-chain contract execution
Using Solana funding with EIP-7702 enables atomic operations: SOL → USDC swap → bridge → delegation → contract execution.
Next Steps
Getting Started
Build your first EIP-7702 swap with delegation
Troubleshooting
Handle multi-input limitations and edge cases
All existing OneBalance API endpoints work with EIP-7702. Just update your account configuration to use
type: "kernel-v3.3-ecdsa"
and deploymentType: "EIP7702"
.