> ## 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.

# Crypto deposits

> Accept crypto from a connected wallet, a deposit address, or balances held in another app.

The deposit widget can fund a service-managed deposit account from a connected wallet, a copied address or QR code, or supported third-party positions. Rhinestone then routes the funds to your configured destination.

## Choose a flow

<CardGroup cols={2}>
  <Card title="Deposit from a wallet" icon="wallet" href="/deposits/crypto/deposit-from-a-wallet">
    Let the widget connect a wallet or reuse the wallet your app already connected.
  </Card>

  <Card title="Deposit addresses and QR codes" icon="qrcode" href="/deposits/crypto/deposit-addresses-and-qr-codes">
    Accept transfers from another wallet, app, or exchange without connecting it.
  </Card>

  <Card title="Asset migrations" icon="arrow-right-arrow-left" href="/deposits/crypto/asset-migrations">
    Fund from supported balances and DeFi positions held in another app.
  </Card>

  <Card title="Withdraw funds" icon="arrow-up-from-line" href="/deposits/crypto/withdraw-funds">
    Let users withdraw from an account to a supported chain and token.
  </Card>
</CardGroup>

## Start here

Complete the shared [widget quickstart](/deposits/overview/widget/quickstart) and [backend setup](/deposits/overview/widget/backend-setup), then choose a flow above. Use the shared guides for [widget configuration](/deposits/overview/widget/widget-configuration), [theming](/deposits/overview/widget/theming-and-customization), [mobile apps](/deposits/overview/widget/mobile-apps), [callbacks and error handling](/deposits/overview/widget/callbacks-and-error-handling), [analytics](/deposits/overview/widget/analytics), [history and recovery](/deposits/overview/widget/history-and-recovery), and [migration](/deposits/overview/widget/migration-guide).

Use [webhooks](/deposits/headless/processing-and-tracking/webhooks) for completion handling that must not depend on the widget remaining open.
