# 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


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.upshift.finance/core-products/upshift-rwa-clear/pricing-and-fees.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
