# Overview

expand.network provides Account abstraction capabilities.&#x20;

What is **Account Abstraction?**

Regular ways of keeping your digital stuff safe, like browser extensions, seed phrases, and wallets, can be a hassle. But the idea is to make using Web3 super easy so regular folks can use it without realizing they are.&#x20;

With the current Ethereum architecture, users sign transactions and pay gas fees from their externally owned accounts (EOAs). Account abstraction proposes a more flexible system where these responsibilities can be offloaded or changed to allow more varied transaction models.

Account Abstraction lets computer whizzes create special "smart accounts" or flexible wallets. It does this by changing who's in charge of saying "yes" to money moves. Instead of wallets doing it, smart accounts take over. This means these accounts can do more than just move money around. They can also do fancy things like running computer code, triggering events, and managing how things change on the internet money system. Cool, right?

The following functions are implemented considering the Account Abstraction capabilities:-&#x20;

| Name                | Type  | Description                                                              |
| ------------------- | ----- | ------------------------------------------------------------------------ |
| getsignaturemessage | Read  | Get the signature message, which needs to be signed.                     |
| getuserops          | Read  | Get the user operation, which can be signed and sent to the bundler.     |
| getpaymasterdata    | Read  | Get the paymaster data, that can be sent in the user operations.         |
| senduserops         | Write | Prepare the data, to send the bundle of user operations, to the bundler. |

Following is the diagram for account abstraction on-chain wallet creation:-

<figure><img src="/files/Jzbb5s5QCpcP1CMpUsAq" alt=""><figcaption><p>Account Abstraction On-chain wallet creation</p></figcaption></figure>

Following is the diagram for executing call data operation via On-chain wallet contract:-

<figure><img src="/files/mxUO0m3TjP5MqjjoZVtG" alt=""><figcaption><p>Execute call data operation via On-chain wallet contract</p></figcaption></figure>

Following is the diagram for account abstraction gas payment via paymaster contract:-

<figure><img src="/files/8U0VbyrhPTUeIdQugx5m" alt=""><figcaption><p>Account Abstraction Gas Payment via Paymaster contract</p></figcaption></figure>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.expand.network/account-abstraction/overview.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
