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

# Wallets Overview

Dynamic supports four wallet types. This page defines each and when to use it. You can use one or combine them.

## Embedded wallets

**Definition:** Embedded wallets are crypto wallets Dynamic creates for your users. The user owns the wallet; no single party holds the full key.

**Key features:**

* Created when the user signs up or when needed; no browser extension or app install.
* Users sign in with email or social login and get a wallet—no seed phrases to store.
* No single point of failure: the full key never exists in one place, so one compromise doesn't expose the wallet.
* Signing is fast.
* Users can recover access without seed phrases; multiple recovery and backup options are available.
* Users can export their keys and move to another provider.
* Same wallet works across web, mobile, and desktop.
* You can pay transaction fees for users and add approval logic.
* Works on EVM, Solana, Sui, and other chains.

**Best for:** Users who don't have a wallet yet, fast signup, and when you want to pay fees for users.

<Card title="Our Embedded Wallets" href="/docs/overview/wallets/embedded-wallets/mpc/overview">
  How embedded wallets work and how to configure them.
</Card>

## External wallets

**Definition:** External wallets are wallets from third-party providers—MetaMask, Phantom, Rainbow—that users bring to your application. Users control their keys in that wallet.

**Key features:**

* Users connect or sign in with a wallet they already have.
* You can support connect-only or sign-in; you can link multiple wallets per user.
* Wallet recommendations and risk screening available.

**Best for:** Users who already have a wallet and want to use it in your app, or when you want to support multiple wallets per user.

## Server wallets

**Definition:** Server wallets are wallets your backend creates and controls. Your server signs transactions; no user is required to sign.

**Key features:**

* You create and own them; your backend signs.
* No user action needed for signing.
* Works on EVM and Solana.

**Best for:** Automation, bots, scheduled payouts, or any flow where your backend must sign without the user present.

## Global wallets

**Definition:** Global wallets are embedded wallets that work in more than one app—yours or a partner's. The same user-owned wallet can be used across those apps.

**Key features:**

* Same as embedded wallets (user-owned, no single party holds the full key) but usable across apps.
* Users connect via QR or link (e.g. WalletConnect).
* You control branding in your ecosystem.

**Best for:** One wallet across several apps or partners, or a branded wallet users can use in partner apps.

## When to use which

* **Embedded:** Users don't have a wallet; you want fast signup and the option to pay fees for users.
* **External:** Users already have a wallet (e.g. MetaMask, Phantom); you want them to connect or sign in with it, or support multiple wallets.
* **Server:** Your backend must sign transactions without the user—automation, bots, scheduled flows.
* **Global:** One wallet should work across multiple apps in your ecosystem or with partners.
* **Mixed:** You can enable embedded and external together so users can link or switch; server wallets run separately on your backend.

## Start building

Choose your SDK to implement wallets:

<CardGroup cols={2}>
  <Card title="JavaScript" icon="js" href="/docs/javascript">
    Embedded • External
  </Card>

  <Card title="React" icon="react" href="/docs/react">
    Embedded • External • Global
  </Card>

  <Card title="React Native" icon="react" href="/docs/react-native">
    Embedded • External • Global
  </Card>

  <Card title="Flutter" icon="flutter" href="/docs/flutter">
    Embedded • External
  </Card>

  <Card title="Swift" icon="swift" href="/docs/swift">
    Embedded • External
  </Card>

  <Card title="Kotlin" icon="android" href="/docs/kotlin">
    Embedded • External
  </Card>

  <Card title="Unity" icon="unity" href="/docs/unity">
    Global
  </Card>

  <Card title="Node" icon="node" href="/docs/node">
    Server
  </Card>

  <Card title="Python" icon="python" href="/docs/python/quickstart">
    Server
  </Card>

  <Card title="Rust" icon="rust" href="/docs/rust/quickstart">
    Server · Beta
  </Card>

  <Card title="Java" icon="java" href="/docs/java/quickstart">
    Server · Beta
  </Card>

  <Card title="API" icon="code" href="/docs/api-reference">
    Mixed
  </Card>
</CardGroup>
