For the complete documentation index, see llms.txt. This page is also available as Markdown.

syrupUSDC

Custom price feed for Maple Finance syrupUSDC on Ethereum mainnet.

Custom price feed for Maple Finance syrupUSDC on Ethereum mainnet. syrupUSDC is an ERC-4626 vault share representing a deposit in Maple's USDC lending pool. The price is derived from the vault's current share-to-USDC conversion rate multiplied by the USDC/USD price read from the NAV's own primary feed.

Source: syrupUSDC_CustomPriceFeed.sol

Mainnet feed. The L2 deployments use a different oracle composition — see syrupUSDC (L2).

The USDC/USD term is sourced from the NAV's own selector — see Base/USD from the NAV's own selector.


Approach

syrupUSDC.convertToAssets(1 syrupUSDC) × USDC/USD (from the NAV's primary feed via getPriceDataNoDivergence(USDC))

Left-to-right flowchart of the syrupUSDC (Mainnet) price feed: rate and Chainlink inputs combine into a USD price, with a staleness gate.
syrupUSDC (Mainnet) price feed — how its oracle inputs compose into a USD price, with the staleness gate.

Price calculation

Input
Source
Description

convertToAssets()

IERC4626(syrupUSDC)

USDC backing per 1 syrupUSDC at the current vault exchange rate

USDC_USD

NAV base — getPriceDataNoDivergence(USDC) (8 dec)

the NAV's primary USDC/USD price

Vault decimals are read once at deploy. Result carries the feed's 8 decimals.


Constructor

Parameter
Description

syrupUsdc_

The syrupUSDC vault address (also used to read vault decimals)

nav_

NAVCalculator (proxy) — supplies the base stablecoin's USD price via getPriceDataNoDivergence

baseAsset_

The registered base stablecoin whose USD price is read (USDC); must equal the vault's asset() — reverts BaseAssetMismatch otherwise


Staleness

The price is stale if the base USD price is ≤ 0, or if the NAV reports the base asset (USDC) stale — all its feeds stale. The base leg's updatedAt comes from the NAV's selected USDC feed. The convertToAssets rate has no heartbeat — it is a live view on the ERC-4626 vault.


Chains

Deployed on Ethereum mainnet only. L2 deployments use syrupUSDC (L2), which relies on a Chainlink syrupUSDC/USDC feed instead.

Last updated