Skip to main content
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.

What you pick

1

Amount of USDC

The total capital you want to lock.
2

Duration

V1 markets are 30-day tenors.
3

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.

What happens under the hood

1

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.”
2

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.”
3

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.

What you end up with

AssetAmountMeaning
PT= vault shares escrowedRedeem 1:1 at maturity
Underlying (vault shares) from YT saleVariableYour fixed yield, prepaid
USDC0You 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.

Fixed-rate intents concept

State machine, rate formula, edge cases.

Troubleshooting

What to do if a session fails mid-flow.