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

# Lock a Fixed Rate

> Deposit USDC today and guarantee a minimum APY to maturity, in three clicks.

The flagship Kimia flow. You deposit USDC, split into PT + YT, sell YT for the
up-front yield, and the intent-router verifies that the APY you locked clears
your target. If not, the session refuses to complete.

If you want the code-level version, see [lock a fixed rate in guides](/guides/lock-fixed-rate).

## What you pick

<Steps>
  <Step title="Amount of USDC">
    The total capital you want to lock.
  </Step>

  <Step title="Duration">
    V1 markets are 30-day tenors.
  </Step>

  <Step title="Target APY">
    The **minimum** rate you're willing to accept. If the AMM won't give you
    this, the flow aborts and your tokens stay in your wallet.
  </Step>
</Steps>

## What happens under the hood

<Steps>
  <Step title="TX1, Deposit into the delta-vault">
    Your USDC becomes vault shares. The vault simultaneously opens the SOL-PERP
    hedge. The intent-router records the share delta as "step 1 complete."
  </Step>

  <Step title="TX2, Split into PT + YT">
    The split engine escrows your vault shares and mints equal amounts of PT
    and YT. The intent-router records PT + YT balances as "step 2 complete."
  </Step>

  <Step title="TX3, Sell YT on yield-AMM">
    You swap YT for underlying (vault shares) and the intent-router re-derives
    the implied APY. If `achieved_rate ≥ target_rate`, the session completes and
    emits an `IntentFulfilled` event. If not, the step-3 tx reverts.
  </Step>
</Steps>

## What you end up with

| Asset                                      | Amount                  | Meaning                       |
| ------------------------------------------ | ----------------------- | ----------------------------- |
| **PT**                                     | = vault shares escrowed | Redeem 1:1 at maturity        |
| **Underlying (vault shares)** from YT sale | Variable                | **Your fixed yield, prepaid** |
| **USDC**                                   | 0                       | You converted it all          |

Your prepaid yield is the difference between PT sold and underlying received,
annualized over the chosen duration.

## Example

You deposit **1,000 USDC** with a **30-day target of 25% APY**:

```
Step 1 → vault gives you 1,000 vault shares
Step 2 → split engine gives you 1,000 PT + 1,000 YT
Step 3 → yield-AMM takes YT, returns ~20.5 vault shares (the discount)

annualized → 20.5 / 1000 × 365 / 30 ≈ 24.95%  → ❌ below 25%, tx reverts
             OR
             ~20.6 / 1000 × 365 / 30 ≈ 25.04% → ✅ session fulfilled
```

The intent-router reverts on anything \< target. You stay holding PT + YT + some
USDC.

## Why it's powerful

* **Guaranteed execution.** No hoping the AMM holds, the router's contract is
  "fulfill at target, or nothing."
* **No custody.** Your PT and USDC live in your wallet between steps. If the
  third tx fails, you keep everything.
* **Fully on-chain.** The `IntentFulfilled` event is publicly verifiable.
  Integrators can key their UIs off it.

## Read next

<CardGroup cols={2}>
  <Card title="Fixed-rate intents concept" icon="route" href="/concepts/fixed-rate-intents">
    State machine, rate formula, edge cases.
  </Card>

  <Card title="Troubleshooting" icon="circle-question" href="/getting-started/troubleshooting">
    What to do if a session fails mid-flow.
  </Card>
</CardGroup>
