Skip to main content
High-yield wallets separate yield into two distinct buckets:
  • Recognized yield - realized yield that has been explicitly recognized and is withdrawable.
  • Estimated accrued yield - a forward projection of yield that may be recognized at the next recognition event, based on the latest 30-day average APY.
This guide explains how these values behave over time and how to interpret them from the API.

Snapshot-based accounting model

High-yield wallets use the high_yield_wallet_snapshots table to track:
  • principal_balance - total principal allocated to the strategy.
  • recognized_yield - total recognized yield to date.
  • estimated_accrued_yield - projected yield since the last recognition event.
  • average_apy_last_30d_bps - 30-day average APY at the time of the snapshot (basis points).
The latest snapshot drives the balance fields you see on the wallet endpoints.

Wallet balance fields

When you fetch a high-yield wallet, Braid derives these fields from the latest snapshot:
curl -X GET "$BASE_URL/high-yield-wallets/$WALLET_ID" \
  -H "Authorization: Bearer $TOKEN"
Example response (excerpt)
{
  "id": "92ff592c-a5d1-4053-a745-53f140cc2851",
  "withdrawableBalance": 95000.0,
  "recognizedYield": 5000.0,
  "estimatedAccruedYield": 120.5,
  "averageApyLast30dBps": 400,
  "yieldRecognitionPeriodDays": 10,
  "nextExpectedYieldRecognitionAt": "2025-09-21T00:00:00.000Z"
}
  • withdrawableBalance = principal balance + recognized yield (what you can pull out today).
  • recognizedYield = realized yield that has passed recognition and is withdrawable.
  • estimatedAccruedYield = forward-looking projection between recognition events.
  • averageApyLast30dBps = APY snapshot used to inform projections and analytics (not a guarantee).

Daily projected yield snapshots

A daily job inserts snapshot rows that:
  • Carry forward principal_balance and recognized_yield.
  • Update estimated_accrued_yield using:
    • Time elapsed since the last snapshot.
    • average_apy_last_30d_bps and current allocations (from your off-chain analytics).
  • Optionally update average_apy_last_30d_bps when the 30-day APY changes.
This gives dashboards a time series of:
  • Historical average APY.
  • How estimated yield has evolved between recognition events.

Recognition events

Recognition events move projected yield into the recognized bucket:
  1. You compute the correct total recognized yield off-chain.
  2. You insert a snapshot where:
    • principal_balance is carried forward.
    • recognized_yield is bumped to the new total.
    • estimated_accrued_yield is set to 0.
    • average_apy_last_30d_bps is set to the current 30-day APY.
After a recognition snapshot:
  • withdrawableBalance jumps up to include the newly recognized amount.
  • estimatedAccruedYield restarts from zero for the next period.

Yield-over-period endpoint (recognized-only)

To compute yield over time, call:
curl -X POST "$BASE_URL/high-yield-wallets/yield" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "periodStartIso": "2025-09-01T00:00:00.000Z",
    "periodEndIso": "2025-09-30T23:59:59.000Z",
    "highYieldWalletIds": ["92ff592c-a5d1-4053-a745-53f140cc2851"]
  }'
200 response
{
  "period": {
    "start": "2025-09-01T00:00:00.000Z",
    "end": "2025-09-30T23:59:59.000Z"
  },
  "global": {
    "recognized": 1240.35
  },
  "highYieldWallets": {
    "92ff592c-a5d1-4053-a745-53f140cc2851": {
      "recognized": 810.15
    }
  }
}
Important:
  • This endpoint uses recognized yield only, based on recognized_yield deltas between snapshots.
  • Estimated accrued yield and APY projections are never used for this calculation.
When building dashboards:
  • Treat withdrawableBalance and recognizedYield as the source of truth for user-accessible funds.
  • Display estimatedAccruedYield and averageApyLast30dBps as forward-looking or informational metrics with clear labeling (for example, “Projected yield”).
  • Use the /high-yield-wallets/yield endpoint to power performance charts for recognized yield over time, independent of short-term APY fluctuations.