Protocol

Redemption & fees

Redemption is the protocol's only exit of value, and it is deliberately simple: return what the receipt says you owe, receive what the vault says you own.

The sequence

After the receipt's unlockTime (mint + T+2):

  1. The redeemer checks you hold the receipt and it hasn't been redeemed.
  2. Your recorded debtAmount of lUSD is burned — spending your allowance: even the protocol's own burner role cannot touch your lUSD without your explicit approval.
  3. Your vault shares are redeemed at the current share price and the underlying is withdrawn from the venue.
  4. You receive principal + yield − the performance fee, in the deposited asset. The receipt is marked redeemed and kept as an inert record — it never trades again.

A 0%-ratio receipt redeems the same way, burning zero lUSD: a pure yield deposit.

The fee: 5% of yield, never principal

fee    = (gross − principal) × 5%      — only when gross > principal
payout = principal + yield × 95%

Three properties worth stating plainly:

  • Principal is never fee'd. A deposit that earned nothing pays nothing.
  • Losses are never fee'd. If the venue returns less than principal, the fee is zero and the loss passes through honestly — the protocol does not profit from a bad venue day.
  • Rounding favors you. The fee rounds down; the app displays redeemable values net of the fee, so the number you see is the number you get.

The fee rate is capped at 20% in code; it is 5% today. Fee revenue currently accrues to the protocol treasury address and is the intended funding source for $LOOM revenue sharing.

Why T+2 exists

The withdrawal delay gives every redemption a predictable settlement window and the venue a smooth withdrawal profile — it is the protocol's only time parameter, set per market in the registry. It is not a lockup on your liquidity: your lUSD is liquid from second one, and the receipt itself can be sold at any moment, unlocked or not. The delay prices into the receipt's market value instead of trapping you.

Previews

Everything above is quotable before you act: previewRedeemDetailed(receiptId) returns (gross, fee, net) on-chain, and the app's numbers are exactly these calls. See Integration notes.