> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rhinestone.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Embedded wallets

> Give your users passkey-controlled smart accounts directly in your application.

Embedded wallets give your users a passkey-controlled smart account directly in your application, without installing a wallet extension or managing a seed phrase. Users sign up with an email or social identity, then use a passkey to authorize wallet actions.

The embedded wallet SDK provides authentication dialogs, signing, and transaction submission. You can customize the dialogs to match your application and connect the wallet to existing viem or wagmi integrations.

## One account across chains

Each account has the same address on every supported EVM chain. Your application can use that account across chains without asking users to create a separate wallet for each network.

Accounts are application-specific, not shared globally. By default, the same person signing in on another application hostname receives a separate passkey and account. Applications spanning multiple subdomains can explicitly configure a shared account namespace.

## Passkey-based control

Passkeys are bound to your application's domain. Their private keys stay with the user's authenticator, rather than being held by your application or Rhinestone.

The managed transaction path also requires Rhinestone's cosigning service, and recovery guardians can authorize replacement passkeys. These are distinct parts of the account's security model; see [Security and self-custody](/wallets/embedded-wallets/security-and-self-custody) for their authority and availability implications.

## Get started

Start with **Accounts** to register your application and initialize the SDK, then add authentication and adapt the wallet experience to your app.

| Guide                                                                                                           | What it covers                                                                |
| --------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- |
| [Accounts](/wallets/embedded-wallets/accounts)                                                                  | Set up the SDK and obtain a user's smart-account address.                     |
| [Sign up and sign in](/wallets/embedded-wallets/sign-up-and-sign-in)                                            | Authenticate new and returning users and manage application sessions.         |
| [Passkeys and domains](/wallets/embedded-wallets/passkeys-and-domains)                                          | Understand domain-bound credentials and account sharing across subdomains.    |
| [Theming](/wallets/embedded-wallets/theming)                                                                    | Match wallet dialogs to your application's appearance.                        |
| [Ecosystem](/wallets/embedded-wallets/ecosystem)                                                                | Connect through EIP-1193, viem, or wagmi.                                     |
| [Connect external wallets](/wallets/embedded-wallets/external-wallets/connect-external-wallets)                 | Let users choose an existing wallet, such as MetaMask, or an embedded wallet. |
| [Use and manage connected wallets](/wallets/embedded-wallets/external-wallets/use-and-manage-connected-wallets) | Sign, transact, and manage external-wallet connections.                       |
