Smart Accounts
Your wallet on Pragma is a smart account - a smart contract that holds your assets and enables advanced features.
What is a Smart Account?
Unlike traditional wallets (EOAs - Externally Owned Accounts), smart accounts are:
Programmable: Logic is defined in code, not hardware
Flexible: Can implement custom access control
Upgradeable: Features can be added over time
Recoverable: Can implement social recovery (future)
Your HybridDelegator
Pragma uses a smart account called HybridDelegator, built on the MetaMask Delegation Toolkit (DTK).
Key Features
ERC-4337
Account abstraction standard
Delegation
Grant time-limited permissions
Multi-call
Batch multiple actions
Gas Sponsorship
Transactions can be paid by others
Account Structure
Owner vs Smart Account
Owner Account (Web3Auth)
Created when you sign in with Google/email
Signs delegations and permissions
Never directly sends transactions
Address is hidden from normal view
Smart Account (HybridDelegator)
Your public wallet address
Receives and holds all your assets
Executes transactions via delegations
Address shown in sidebar
Why Smart Accounts?
1. Gasless Experience
Your session key can pay gas while executing on your smart account's behalf.
2. Better Security
No private key exposure for every transaction
Time-limited permissions reduce risk (5-minute expiry)
Each delegation is scoped to specific operations
3. Flexibility
Batch multiple operations
Complex access control rules
Future: social recovery, spending limits
4. Better UX
Sign once, execute many
No per-transaction approvals
Cleaner interaction flow
Finding Your Address
In the Sidebar
Your smart account address is shown at the top of the sidebar after connecting.
Via Chat
Shows your full smart account address.
Account Info
Shows:
Smart account address
Owner address
Session key address
Network info
Receiving Funds
Send tokens to your smart account address (not the owner address):
Copy address from sidebar
Send from exchange/other wallet
Wait for confirmation
Balance updates automatically
How Transactions Work
You request an action ("Swap 50 MON to USDC")
Pragma creates a delegation (permission for session key)
You sign the delegation (with your owner key)
Session key executes (submits transaction on-chain)
Smart account executes (performs the swap)
Result delivered (you receive USDC)
Technical Details
Address Generation
Your smart account address is deterministically generated from:
Your owner address
A salt (unique per user)
The HybridDelegator implementation
Deployment
Deployed on first use (counterfactual deployment)
No gas needed for deployment (CREATE2)
Same address on all supported networks
Contract Address
Your HybridDelegator is deployed to a unique address based on your owner key.
Delegation Manager
Address:
0xdb9B1e94B5b69Df7e401DDbedE43491141047dB3Manages all delegations and permissions
Part of the DTK infrastructure
Security Considerations
Your Owner Key
Generated by Web3Auth from your login
Tied to your Google/email account
Never leaves your browser
Controls all smart account permissions
Recovery
Currently tied to Web3Auth login
Same Google/email = same owner key = same smart account
Future: social recovery options
Best Practices
Use a secure Google/email/social account
Enable 2FA on your login provider
Don't share your session key information
Disconnect if you notice suspicious activity
Last updated