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

# Embedded Wallets

> Deploy white-label wallets directly inside your app for any use case

Embedded Wallets are Crossmint [smart contract wallets](/wallets/architecture) designed for applications that want to give users wallets without leaving the app. They share the same underlying [architecture](/wallets/architecture) and [signer model](/wallets/concepts/signers) as all Crossmint wallets, but are configured for end-user ownership and everyday consumer interactions.

This page explains what makes a wallet an embedded wallet and its key capabilities. If you are ready to get started with implementation, head over to the [Wallets Quickstarts](/wallets/quickstarts/react).

## What Makes a Wallet "Embedded"?

An Embedded Wallet is a Crossmint wallet owned by an end user and integrated directly into your application. You reference it by a user-identity [wallet locator](/wallets/concepts/wallet-locators) like an email, user ID, phone number, etc. A few key characteristics set it apart:

| Dimension             | User Wallet                                    | Treasury Wallet (`owner: "COMPANY"`)                                                       |
| --------------------- | ---------------------------------------------- | ------------------------------------------------------------------------------------------ |
| **Visibility**        | Appears under the **Users** tab in the Console | Appears under the **Company** tab in the Console                                           |
| **Intended operator** | End user or agent                              | Your finance/ops team or backend systems                                                   |
| **Typical signer**    | Device signer, passkey, or email OTP           | Server signer or [Cloud KMS](/wallets/guides/signers/cloud-kms)                            |
| **Custody model**     | Non-custodial or hybrid                        | [Custodial](/wallets/concepts/custody-models#custodial) — your organization holds all keys |
| **Common extensions** | Swaps, staking, cards                          | On/off-ramp, regulated transfers, internal transfers                                       |

## Key Capabilities

### Programmable Controls

Embedded Wallets use the same [signer architecture](/wallets/concepts/signers) as all Crossmint wallets. For embedded use cases, this lets you:

* **Offer passkey or biometric sign-in** using device signers or passkeys.
* **Enable recovery** through email, phone, or social recovery options.
* **Rotate signers** over time without changing wallet addresses or moving assets.
* **Set policy rules** such as spending limits or allowed destinations.

### Multi-Chain Support

Embedded Wallets work across all [supported chains](/introduction/supported-chains) — Solana, 20+ EVM chains (Ethereum, Base, Polygon, and others), and Stellar. You can build one integration and let users hold and transact assets on the chains they prefer.

### Security and Compliance

* **Smart contract wallets**: Each embedded wallet is backed by its own smart contract, providing enhanced security and programmability compared to traditional MPC or TEE-based custody.
* **SOC-2 compliance**: Independently audited security controls and processes.
* **Audit trails**: Immutable logs of all wallet operations for compliance and debugging.
* **Transaction monitoring**: Real-time monitoring via dashboards, APIs, and [webhooks](/wallets/guides/webhooks).

### Consumer-Grade Experience

* **No seed phrases or gas fees**: Crossmint abstracts blockchain complexity so users do not need to manage keys or network-specific fees.
* **Gas sponsorship**: You can sponsor gas for your users and bill costs in fiat.
* **Built-in onramps**: Users can fund wallets directly from cards, Apple Pay, or Google Pay.
* **Account recovery**: Users can recover access even if they lose their main signer.

## Quickstarts

<CardGroup cols={3}>
  <Card title="React" icon="react" iconType="duotone" color="#61DAFB" horizontal="true" href="/wallets/quickstarts/react" />

  <Card title="Node.js" icon="node-js" iconType="duotone" color="#339933" horizontal="true" href="/wallets/quickstarts/nodejs" />

  <Card title="REST API" icon="server" iconType="duotone" color="#6554C0" horizontal="true" href="/wallets/quickstarts/restapi" />

  <Card title="React Native" icon="mobile-notch" iconType="duotone" color="#61DAFB" horizontal="true" href="/wallets/quickstarts/react-native" />

  <Card title="Flutter" icon="mobile" iconType="duotone" color="#02569B" horizontal="true" href="/wallets/quickstarts/flutter" />

  <Card title="Swift" icon="swift" iconType="duotone" color="#FA7343" horizontal="true" href="/wallets/quickstarts/swift" />

  <Card title="Kotlin" icon="android" iconType="duotone" color="#7F52FF" horizontal="true" href="/wallets/quickstarts/kotlin" />
</CardGroup>

## See Also

<CardGroup cols={2}>
  <Card title="Create a Wallet" icon="plus" href="/wallets/guides/create-wallet">
    Step-by-step guide to create and fund an embedded wallet
  </Card>

  <Card title="Signers" icon="key" href="/wallets/concepts/signers">
    The full signer type reference and recommended configurations
  </Card>

  <Card title="Custody Models" icon="shield-halved" href="/wallets/concepts/custody-models">
    How signer choices map to custody architectures
  </Card>

  <Card title="Architecture" icon="layer-group" href="/wallets/architecture">
    How Crossmint smart contract wallets work
  </Card>
</CardGroup>
