Skip to main content
Oracles supply price data to the chain. In Bend, a market’s oracle answers: “How many USD is 1 unit of this collateral worth?” so the protocol can value collateral, set borrowing capacity, and trigger liquidations.

Oracles in Bend markets

Oracles are used to:
  • Value collateral
  • Compute borrowing capacity
  • Trigger liquidations when positions are undercollateralized
  • Support interest rate logic

Bend implementation

Bend is oracle-agnostic: each market specifies its oracle in its parameters. Market creators choose the feed that fits the asset (e.g. Chainlink, Redstone, API3, Pyth, Chronicle, or a custom implementation).

Compatible oracle types

  • Price feed oracles: External feeds for exchange rates (Chainlink, Redstone, API3, Pyth, Chronicle).
  • Exchange rate oracles: For wrapped or rebasing tokens with deterministic rates (e.g. wstETH/stETH).
  • Fixed-price oracles: For assets with a known peg (e.g. stablecoins).

Getting price data

Steps to get the current price of a collateral (e.g. $WBERA).

1. Get market ID

Find the Market ID on Berachain Bend.
Bend - Find Market Id

2. Find oracle address

In BeraScan look up the Morpho (Vault) address and open it:
# Morpho (Vault)
0x24147243f9c08d835C218Cda1e135f8dFD0517D0
Berascan - Find Oracle Address

3. Get base feed address

In the oracle contract, read BASE_FEED_1 and open the linked address.
Berascan - Find Base Feed Address

4. Get latest answer

In the base feed contract (or its proxy), call latestAnswer.
Berascan - Latest Price Answer
The value uses 8 decimals. For example, 202675951 means 2.02675951 USD (divide by 100000000).
# $BERA/$WBERA price
2.02675951 USD

Oracle security

Oracle choice is critical and immutable for a Bend market. Before using a market:
  • Verify the oracle implementation
  • Understand the price sources
  • Consider manipulation or failure modes