Stellar Core Contracts

Peridot’s core protocol is a Compound-style lending stack on Soroban. Users supply assets into ReceiptVault markets, borrow against their collateral, and earn rewards via the SimplePeridottroller. Interest rates are calculated by JumpRateModel, and rewards are minted in PeridotToken. Leveraged margin trading is layered on top via MarginManager.

This page explains what the core system is and how the high-level flow works. Each contract has a dedicated subpage with function-level details.

Components

  • ReceiptVault (pToken market) – asset custody, deposits, borrows, interest accrual.

  • SimplePeridottroller – risk engine, liquidity checks, liquidation, rewards.

  • JumpRateModel – interest rate curve used by vaults.

  • PeridotToken (P) – reward token minted by the controller.

  • MarginManager – leveraged trading layer that uses vault borrows and controller checks.

High-Level Flow

1

Supply

  • User calls deposit on a ReceiptVault.

  • Vault transfers underlying and mints pTokens.

  • pTokens accrue value via the exchange rate.

2

Borrow

  • User calls borrow on a ReceiptVault.

  • Vault asks SimplePeridottroller for hypothetical_liquidity.

  • Borrow succeeds only if liquidity remains positive.

3

Redeem / Withdraw

  • User calls withdraw with pToken amount.

  • Controller checks post-redeem liquidity.

  • Vault burns pTokens and returns underlying.

4

Liquidation

  • Liquidator calls SimplePeridottroller.liquidate.

  • Controller computes seize amounts and calls vault hooks.

  • Vault repays debt and seizes pTokens.

5

Rewards

  • Controller accrues rewards per market (supply/borrow speeds).

  • User calls claim to mint PeridotToken.

6

Leveraged Margin

  • User deposits collateral via MarginManager.

  • Manager borrows through vaults, user swaps externally.

  • Manager finalizes and tracks the position on-chain.

Last updated