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
CompliantSmartWallet.sol Solidity 0.8.26
// 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.