Ondo
| Parameter | Description |
|---|---|
| Yield ID | ethereum-usdc-ondo-usdy-vault, ethereum-usdc-ondo-ousg-vault |
| Network | Ethereum |
| Receipt Token | USDY, OUSG (non-rebasing ERC-20) |
| Additional Rewards | None. All yield is embedded in price appreciation of the receipt token. |
| Minimum Requirement | Per-product on-chain minimum subscription / redemption, denominated in USD and converted to token amount via the price oracle. Surfaced via getStakeArguments. |
About
Ondo Finance issues tokenized U.S. Treasury and government-bond exposure as composable ERC-20 tokens. Two products are exposed natively through the Yield API, both denominated in USDC:
| Product | Strategy | Eligibility |
|---|---|---|
| USDY | Tokenized short-term U.S. Treasuries and bank demand deposits. | Non-US individuals and institutions (blocklist model). |
| OUSG | Tokenized short-term U.S. government bond fund. | Qualified Purchasers (generally >$5M net worth individuals or >$25M asset entities). |
Both products run through Ondo's Instant Manager contract. On entry, the user deposits USDC and receives the receipt token (USDY/OUSG) at the current oracle price in a single atomic transaction. On exit, the receipt token is redeemed back to USDC atomically against the same manager.
There are no separate reward tokens, no claim transactions, and no compounding actions — yield accrues through price appreciation of the receipt token and is auto-compounding by construction.
Considerations
Subscribe / redeem flow
Both entry and exit settle atomically against the Instant Manager — there is no async request or off-chain settlement window:
| Action | On-chain call | Transaction type |
|---|---|---|
| Enter | subscribe(depositToken, depositAmount, minimumRwaReceived) | STAKE |
| Exit | redeem(rwaAmount, receivingToken, minimumTokenReceived) | UNSTAKE |
Entry and exit are each preceded by an APPROVAL transaction when the current allowance is insufficient (USDC for entry, the receipt token for exit).
Non-rebasing token with price oracle
USDY and OUSG do not rebase — balanceOf is static after subscription. Yield accrues through price appreciation surfaced via the on-chain spot-price oracle, and the user's underlying value is computed as balance × oraclePrice. USDY additionally uses a historical-price oracle for redemption pricing, computing past NAV on-chain without an archive node.
Compliance layer
Both products are KYC-gated. Every entry and exit is pre-checked against Ondo's on-chain compliance contracts before any transaction is constructed:
- ID Registry (
getRegisteredID) — confirms the wallet is registered for the specific RWA token. - Compliance (
checkIsCompliant) — reverts for sanctioned or blocked wallets.
KYC status is exposed through the unified KYC interface (GET /v1/yields/:id/kyc/status). A non-registered wallet is returned NotStarted with the Ondo onboarding URL; eligibility differs per product (USDY excludes US persons under a jurisdiction blocklist; OUSG admits qualified purchasers in non-restricted jurisdictions).
Pre-flight guards
Pause state, compliance, and minimums are validated in preCheck before any transaction is constructed:
- A non-compliant or non-registered wallet is rejected before transaction construction.
- If subscriptions are paused on entry, the action endpoint responds with HTTP 412 Precondition Failed; likewise for redemptions on exit.
Minimum amounts
Ondo enforces on-chain minimumDepositUSD and minimumRedemptionUSD per product. The API reads these USD minimums, converts them to a token amount via the current oracle price, and surfaces them via getStakeArguments. Sub-minimum requests are rejected with 400 Bad Request in preCheck before transaction construction.
List of Integration IDs
| Yield ID | Yield | Network |
|---|---|---|
ethereum-usdc-ondo-usdy-vault | Ondo USDY | Ethereum |
ethereum-usdc-ondo-ousg-vault | Ondo OUSG | Ethereum |
