# Intro to Wallet APIs

> Introduction to Wallet APIs and smart accounts

> For the complete documentation index, see [llms.txt](/docs/llms.txt).

Wallet APIs is your all-in-one toolkit for building zero-friction sign-up and transaction flows. But what’s **really** happening under the hood?

Wallet APIs abstracts away the complexity of smart wallets, but as a builder it’s useful to have a foundational understanding of how it works. This way, you can make informed decisions and unlock the full potential of smart wallets.

Unlike other embedded wallet providers that only solve sign-up and key management, Wallet APIs goes further by streamlining the transaction flow with features like gas sponsorship. How? Through **smart wallets**. **Here’s how it works.**

## Smart wallets: programmable wallets, not EOAs

<div style={{ display: "flex", flexWrap: "wrap", alignItems: "flex-start" }}>
  <div style={{ flex: "1", marginRight: "10px" }}>
    With Wallet APIs, deploy a **smart wallet** for
    each user instead of an Externally Owned Account (EOA). This smart wallet
    securely stores the user’s assets, such as tokens or NFTs.
  </div>

  <div style={{ flex: "0 0 30%" }}>
    <img src="https://alchemyapi-res.cloudinary.com/image/upload/v1764187322/docs/aa-sdk/images/smartaccount.png" alt="Alt text" style={{ width: "100%" }} />
  </div>
</div>

#### What is a smart wallet?

Unlike EOAs, smart wallets are programmable and can include logic. Learn more about [smart wallets](https://www.alchemy.com/overviews/what-is-account-abstraction).

Wallet APIs comes with enterprise-grade, audited smart account implementations. Use [Modular Account v2](/docs/wallets/smart-contracts/modular-account-v2/overview) for the best experience. Learn more and [choose](/docs/wallets/smart-contracts/choosing-a-smart-account) the smart wallet that best fits your needs or bring your own smart account.

#### Why smart wallets?

Smart wallets unlock powerful features like gas sponsorship and transaction batching enabling you to create seamless transaction experiences (more on this [later](#gas-manager-sponsor-gas)).

Smart wallets provide flexibility, security, and additional functionality over EOAs. Features like social recovery, two-factor authentication, multi-owner support, and ownership transfer become possible with smart wallets.

In Wallet APIs, this concept will manifest as a [smart wallet](/docs/wallets/resources/types#smartcontractaccount).

## Authentication: web2 login and key management

<div style={{ display: "flex", flexWrap: "wrap", alignItems: "flex-start" }}>
  <div style={{ flex: "1", marginRight: "10px" }}>
    An **owner** is a service (e.g., Privy or Turnkey) or application (e.g., MetaMask) that manages a private key and signs transactions. The signature is only valid if the owner is an owner of the smart wallet.
  </div>

  <div style={{ flex: "0 0 30%" }}>
    <img src="https://alchemyapi-res.cloudinary.com/image/upload/v1764187321/docs/aa-sdk/images/smartaccount-signer.png" alt="Alt text" style={{ width: "100%" }} />
  </div>
</div>

Using Wallet APIs, secure a user’s smart wallet with email, social login, or passkeys, using non-custodial authentication infrastructure. Smart wallets support advanced use cases, such as multiple owners and ownership transfer, offering more utility than EOAs.

With this setup, users can sign-up, log in, and sign transactions using familiar web2 user experiences.

In Wallet APIs, this concept will manifest as an [owner](/docs/wallets/signer/what-is-a-signer).

## Sending transactions

<div style={{ display: "flex", flexWrap: "wrap", alignItems: "flex-start" }}>
  <div style={{ flex: "1", marginRight: "10px" }}>
    With Wallet APIs, [sending transactions](/docs/wallets/transactions/send-transactions) is as straightforward as sending "normal" EOA transactions. Under the hood, the SDK handles all the complexity of packaging and submitting transactions.
  </div>

  <div style={{ flex: "0 0 30%" }}>
    <img src="https://alchemyapi-res.cloudinary.com/image/upload/v1764187320/docs/aa-sdk/images/smartaccount-signer-bundler.png" alt="Alt text" style={{ width: "100%" }} />
  </div>
</div>

A huge benefit of smart wallets is the ability to [batch transactions](/docs/wallets/transactions/send/batch-user-operations) creating simpler user experiences. For example, you can now approve and swap in one click, rather than signing, waiting, and sending multiple transactions.

For most use cases, you only need a [Smart Account Client](/docs/wallets/concepts/smart-account-client).

## Gas Manager: sponsor gas

<div style={{ display: "flex", flexWrap: "wrap", alignItems: "flex-start" }}>
  <div style={{ flex: "1", marginRight: "10px" }}>
    With gas sponsorship, your users won't need to worry about having assets in their accounts to pay for gas. Using [Wallet APIs](/docs/wallets/transactions/sponsor-gas), configure a gas manager policy, insert your policy ID into the SDK, and the Gas Manager handles the rest.
  </div>

  <div style={{ flex: "0 0 30%" }}>
    <img src="https://alchemyapi-res.cloudinary.com/image/upload/v1764187319/docs/aa-sdk/images/smartaccount-signer-bundler-paymaster.png" alt="Alt text" style={{ width: "100%" }} />
  </div>
</div>

## Conclusion

Wallet APIs makes it straightforward to build a web2 user experience from sign-up to transaction. It includes everything you need to bring users onchain:

* Non-custodial **authentication** with web2 login
* Secure and flexible **smart wallets** to store assets
* **Gas Manager** to sponsor gas
* Reliable and scalable **transaction sending** infrastructure

Wallet APIs abstracts away the intricacies, allowing you to focus on building great user experiences.

**Now, get started with the [quickstart](/docs/wallets/react/quickstart)!**

Want to learn more? Explore the [smart wallets education hub](https://www.alchemy.com/overviews/what-is-account-abstraction).