Use Case
Smart Wallet Compliance
Embed on-chain risk screening directly into smart wallets and account abstraction wallets. Every userOp is evaluated before execution — no bypass possible.
The Challenge
Smart wallets (ERC-4337) and account abstraction are revolutionizing user experience in Web3. But they introduce a new compliance challenge: how do you screen transactions when users interact through bundlers and entry points rather than direct EOA-to-contract calls?
Traditional compliance solutions rely on dApp-level integration, which smart wallets bypass entirely. A user can construct a userOp that interacts with any contract, and the bundler will execute it — unless the wallet itself enforces compliance.
The Solution
- Risk checks at the entrypoint level, before userOp execution
- Automatic screening of all destination addresses and call data
- Policy enforcement per wallet owner, not per dApp
- Bypass impossible even via direct bundler submission
- Real-time risk profile updates via oracle networks
// Smart wallet with embedded risk screening contract CompliantSmartWallet is BaseAccount { function _validateUserOp( UserOperation calldata userOp, bytes32 userOpHash ) internal override returns (uint256) { // Screen destination address (bool allowed, uint256 risk) = fides.evaluateTransaction( address(this), userOp.dest, userOp.value ); if (!allowed) revert ComplianceViolation(risk); return super._validateUserOp(userOp, userOpHash); } }
Capabilities
Built for account abstraction
ERC-4337 Compatible
Integrates with any ERC-4337 entrypoint. Risk checks run during userOp validation, before bundler acceptance.
Bundler-Agnostic
Works with any bundler service. Compliance is enforced by the wallet contract, not the infrastructure.
Policy Per Owner
Each wallet owner can configure their own risk policies: daily limits, whitelisted addresses, jurisdiction rules.
Session Key Support
Apply different risk policies to session keys vs. owner key. Granular control for delegated access.
Ready to build a compliant smart wallet?
Get access to our SDK, testnet deployment, and ERC-4337 integration guide.