> For the complete documentation index, see [llms.txt](https://docs.kinto.xyz/kinto-the-modular-exchange/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.kinto.xyz/kinto-the-modular-exchange/building-on-kinto/rollup-features/kinto-account-abstraction.md).

# Kinto Account Abstraction

Kinto only allows transactions from account abstraction-powered wallets. **Externally owned accounts (EOA) are disabled for greater security and to provide a uniform,** delightful user experience.

## Why?

To have a great user experience, Kinto has adopted the Account Abstraction [<mark style="color:purple;">EIP</mark>](https://eips.ethereum.org/EIPS/eip-4337)[<mark style="color:purple;">-4337</mark>](https://eips.ethereum.org/EIPS/eip-4337) standard with a few tweaks. As a result, users will receive the following benefits:

* Have a **non-custodial smart wallet** that can be used like any web2 application
* **Don't have to worry about seed phrases** or browser extensions
* **Don't have to pay for transaction fees** and worry about gas settings
* **Safe and easy recovery procedures** in case of loss

## For Developers

Kinto's account abstraction allows developers to focus on building their financial applications without worrying about the underlying infrastructure.&#x20;

<figure><img src="/files/G8XPXrH65vNVC0LRf08e" alt=""><figcaption><p>EIP-4337 Architecture</p></figcaption></figure>

To facilitate the development process and increase the security of our implementation, we have made a few changes:

* [<mark style="color:purple;">Entry Point</mark>](/kinto-the-modular-exchange/building-on-kinto/smart-contract-reference/kinto-entrypoint.md)<mark style="color:purple;">:</mark> Checks that the wallet belongs to a whitelisted wallet factory.
* [<mark style="color:purple;">Sponsor Paymaster</mark>](/kinto-the-modular-exchange/building-on-kinto/smart-contract-reference/sponsorpaymaster.md)<mark style="color:purple;">:</mark> In Kinto, **end contracts must pay for user transactions and charge the users fees on deposit/withdraw/interest**. We'll open a developer dashboard to help developers top up their contracts and ensure an interrupted service.
* [<mark style="color:purple;">Wallet Factory</mark>](/kinto-the-modular-exchange/building-on-kinto/smart-contract-reference/kintowalletfactory.md)<mark style="color:purple;">:</mark> **Only users who have completed the KYC process can create valid AA wallets in Kinto**.
* [<mark style="color:purple;">Wallet</mark>](/kinto-the-modular-exchange/building-on-kinto/smart-contract-reference/kinto-wallet.md)<mark style="color:purple;">:</mark> User Wallets have a minimum of one cloud non-custodial signer (Turnkey) and a maximum of three signers. Users can set up an authentication policy that fits their situation. In an emergency, a cloud recovery signer (Turnkey) can start an emergency process that needs to be ratified by the user.

## Smart Contracts

* [<mark style="color:purple;">KintoWalletFactory</mark>](/kinto-the-modular-exchange/building-on-kinto/smart-contract-reference/kintowalletfactory.md)<mark style="color:purple;">:</mark> The factory to create and manage Kinto Wallets. It also facilitates contract deployments.
* [<mark style="color:purple;">KintoWallet</mark>](/kinto-the-modular-exchange/building-on-kinto/smart-contract-reference/kinto-wallet.md)<mark style="color:purple;">:</mark>  The Kinto smart-contract wallet. The code contains the code that verifies the execution, recovery, and management of the wallet.
* [<mark style="color:purple;">EntryPoint</mark>](/kinto-the-modular-exchange/building-on-kinto/smart-contract-reference/kinto-entrypoint.md)<mark style="color:purple;">:</mark> Based on the EntryPoint of the original EIP-4337, the Kinto EntryPoint validates that a valid factory created the wallet.
* [<mark style="color:purple;">SponsorPaymaster</mark>](/kinto-the-modular-exchange/building-on-kinto/smart-contract-reference/sponsorpaymaster.md)<mark style="color:purple;">:</mark>  In Kinto, end contracts pay for the gas of its users. The sponsor paymaster handles the balance/funding of all contracts in the network.
