Pricing and Fees

Oracle Pricing

Each supported RWA token has a dedicated oracle price feed that provides a live market rate. The contract converts the input asset to USDC using this oracle price, with multiple safety checks:

Check
Purpose

Staleness threshold

Rejects prices older than a configurable window (minimum 5 minutes)

Price deviation bounds

Optional per-asset circuit breaker that rejects conversions if the oracle price deviates too far from the expected peg

Round completeness

Ensures the oracle has fully reported the current price round

Fee Structure

A spread fee is applied to every redemption, denominated in USDC:

Parameter
Range

Spread (per asset)

0.05% to 5.00%, configurable

Rate limit

Optional per-transaction cap on USDC output

Fees are not extracted or distributed separately. They remain in the subaccount, increasing the net asset value for all vault depositors automatically.

LP Yield Sources

Liquidity providers earn from two sources:

  1. Spread fees — every instant redemption generates fee revenue that accrues to the vault's NAV

  2. Idle lending yield — USDC not immediately needed for redemptions earns lending yield via the yield layer (e.g., Morpho)

Worked Example

An RWA holder redeems 10,000 USCC. The Chainlink oracle reports a rate of 1.02 USCC per USDC. The configured spread is 10 basis points (0.10%).

  • USDC equivalent: 10,000 / 1.02 = 9,803.92 USDC

  • Fee: 9,803.92 x 0.10% = 9.80 USDC

  • Holder receives: 9,794.12 USDC (instantly, vs. ~32 hours via traditional redemption)

  • The 9.80 USDC fee stays in the vault, accruing to all LPs

Last updated