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

# Custom Wallet

> Build a fully custom non-custodial wallet using the Wallet Development Kit on top of OMS wallet infrastructure. Self-host critical components if needed.

The **Wallet Development Kit (WDK)** lets you build a custom non-custodial wallet while using OMS wallet infrastructure for identity, sessions, transactions, and data. You own the UI, routing, and product decisions, and you can self-host critical components where required.

* Package: `@0xsequence/wallet-wdk`
* Repo: [sequence.js](https://github.com/0xsequence/sequence.js)

## What you build vs what OMS provides

| Area              | You build                               | OMS provides                                        |
| ----------------- | --------------------------------------- | --------------------------------------------------- |
| UI/UX             | Wallet screens, flows, routing, theming | Reference components and SDKs                       |
| Auth and sessions | Login UX, flow wiring                   | WaaS enclave (session attestations), Smart Sessions |
| Transactions      | App-specific flows and UX               | Transaction API for relaying and sponsorship        |
| Data              | Custom views and analytics              | Indexer for balances, tokens, events, prices        |
| Node access       | Optional custom providers               | Blockchain RPC via Node Gateway                     |
| Backend           | Optional business logic                 | Sidekick for secure server-side endpoints           |

## Available capabilities

* **Smart Sessions** and session attestations for scoped, low-friction execution.
* **Social logins and email** with enclave-signed sessions.
* **Cross-chain accounts** with a single onchain configuration root covering signers, sessions, and recovery.
* **Timed recovery keys** for passphrase-based recovery with a 30-day lockdown.
* **Developer integrations**: Web via existing SDKs.
* **Services**: Indexer for reads, Transaction API for writes, Node Gateway RPC for raw calls.

## Integration flow

<Steps>
  <Step title="Install and plan hosting">
    Add the package: `pnpm add @0xsequence/wallet-wdk`. Decide which components you will self-host (UI, enclave services) versus use hosted.
  </Step>

  <Step title="Configure wallet metadata">
    Set the wallet domain, supported chains, branding, and session policies. Use Builder for environment, keys, and policy management.
  </Step>

  <Step title="Wire identity and sessions">
    Use the WaaS enclave for session attestations. Implement the login and session callback flow, and store session keys securely.
  </Step>

  <Step title="Connect services">
    Read with Indexer, write with Transaction API, and access nodes with Blockchain RPC.
  </Step>

  <Step title="Test and ship">
    Validate Smart Session scopes, recovery paths, and cross-chain actions. Roll out on your domain.
  </Step>
</Steps>

## Self-hosting options

* **[Wallet Infrastructure](/wallets/infrastructure)** describes the enclave architecture in full. The enclave service can be self-hosted in your own AWS Nitro Enclave environment if your compliance model requires it.
* You can run your own Sidekick instance for controlled server-side writes and key custody.
* Contracts, audits, and deployments are documented in the [Sequence technical references](https://docs.sequence.xyz/solutions/technical-references/overview).

## Further reading

<CardGroup cols={2}>
  <Card title="Hosted Wallet" icon="cloud" href="/wallets/hosted-wallet">
    Managed deployment option; OMS runs the infrastructure.
  </Card>

  <Card title="Wallet Infrastructure" icon="shield-halved" href="/wallets/infrastructure">
    The enclave-backed auth and session attestation architecture.
  </Card>
</CardGroup>
