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

# Portfolio Wallets Overview

> Multi-strategy yield wallets with blended rates, automated rebalancing, and liquidity profiles.

Portfolio Wallets let neobanks, exchanges, and treasuries put idle stablecoins to work. Allocate customer deposits across multiple yield sources with a single API integration — Ground handles allocation, rebalancing, withdrawals, and reporting.

## How it works

1. **Configure** — choose yield sources and target weights from the [yield source catalog](/docs/portfolio-wallets/yield-sources).
2. **Create** — create a wallet with your chosen strategy. Ground provisions per-chain deposit addresses.
3. **Deposit** — send USDC on a supported chain or USDT on Ethereum to the wallet's deposit address.
4. **Earn** — Ground allocates deposits across yield sources and rebalances to maintain target weights.
5. **Withdraw** — request USDC or USDT. Ground unwinds positions and delivers the same stablecoin; USDC may bridge across supported chains, while USDT remains on Ethereum.

Once you create a wallet and receive deposit addresses, the lifecycle follows a simple pattern: deposit stablecoins, monitor balances and accrued yield via polling or webhooks, and withdraw when ready. Withdrawal payouts require transaction signing through Turnkey before Ground broadcasts and settles the funds to your destination address.

## USDC and USDT strategies

A portfolio wallet can hold separate USDC and USDT strategies. Configure them under `strategy.allocations.usdc` and `strategy.allocations.usdt`. Each included token group must independently total 100%.

Ground does not swap between USDC and USDT. A USDC deposit follows the USDC strategy, a USDT deposit follows the USDT strategy, and withdrawals source only the stablecoin selected in the request. USDT is supported on Ethereum in production; sandbox uses Ground's mock USDT on Ethereum Sepolia.

```mermaid theme={"theme":{"light":"github-light","dark":"github-dark"}}
sequenceDiagram
    participant YS as Your Server
    participant GA as Ground API
    participant TK as Turnkey API

    note over YS,GA: Stablecoins sent to deposit address
    GA-->>YS: Webhook: deposit confirmed

    YS->>GA: GET /v2/wallets/:id
    GA-->>YS: { balance: { totalUsd, withdrawableUsd } }

    YS->>GA: POST /v2/wallets/:id/withdrawals
    GA-->>YS: { id, status: "processing", payoutLegs }

    GA-->>YS: Webhook: payout pending_customer_approval

    YS->>TK: Sign and approve payout legs

    GA-->>YS: Webhook: withdrawal completed

    note over YS,GA: Stablecoins arrive at destination address
```

## Custody and security

* **Non-custodial key management** — each wallet's private keys are managed by [Turnkey](https://www.turnkey.com/). Ground never has access to signing keys.
* **Signing policies** — your organization controls which withdrawal transactions require approval. Strategy updates are API-authenticated target-allocation changes; later rebalances may execute asynchronously under configured policy.
* **Dedicated addresses** — each wallet gets its own deposit addresses. Funds are never commingled across wallets.
* **HTTPS only** — all API and webhook communication is encrypted in transit.

## Start here

<CardGroup cols={3}>
  <Card title="Quickstart" icon="rocket" href="/docs/portfolio-wallets/quickstart">
    Create a wallet and initiate a withdrawal in 5 minutes.
  </Card>

  <Card title="API Conventions" icon="code" href="/docs/portfolio-wallets/api-conventions">
    Authentication, pagination, rate limits, and error handling.
  </Card>

  <Card title="Yield Sources" icon="chart-line" href="/docs/portfolio-wallets/yield-sources">
    Available yield sources and strategy construction guidance.
  </Card>
</CardGroup>
