{
  "id": 7702,
  "title": "EIP-7702: Set Code for EOAs",
  "status": "Final",
  "type": "Standards Track",
  "category": "Core",
  "summary": "Enables an address to delegate its control to an existing smart contract, creating an account abstracted wallet with new programmable features.",
  "impacts": [
    "Better wallet UX with new features without migrating to a new address.",
    "Dapps can levarage new smart wallet features and enables users to do more complex operations easily.",
    "Wallets need to implement a secure workflow that allows users to activate a chosen smart account.",
    "Recognize new wallet operations and standard wallet contracts",
    "L2s can implement same feature to allow for better cross chain interop",
    "Validators are not affected.",
    "Consensus not changed.",
    "Support new transaction type and code authorization for EOAs to contract wallets.",
    "Brings account abstraction features to EOAs",
    "Better UX for users with features like gasless and batched transactions",
    "Provides alternative recovery options for wallets"
  ],
  "discussion_url": "https://ethereum-magicians.org/t/eip-set-eoa-account-code-for-one-transaction/19923",
  "source_markdown_url": "https://github.com/ethereum/EIPs/blob/master/EIPS/eip-7702.md",
  "canonical_url": "/latest/eips/7702.json",
  "markdown_url": "/latest/eips/7702.md",
  "citations": [
    {
      "recordId": "eip-7702",
      "artifactPath": "normalized/7702.json",
      "url": "/records/proposal/eip-7702/normalized/7702.json",
      "label": "EIP-7702: Set Code for EOAs",
      "snippet": "Enables an address to delegate its control to an existing smart contract, creating an account abstracted wallet with new programmable features."
    }
  ]
}
