Save (formerly Solend)
  • Introduction to Save
  • Getting Started
    • Start Here (Desktop)
    • Start Here (Mobile)
    • Supply & Borrow APY
    • Liquidations
    • Risks
    • FAQ
    • Debugging FAQ
  • DAO & Token
    • DAO
    • Token
    • IDO
  • Protocol
    • Solend Pools
    • Parameters
    • Fees
    • Liquidity Mining
    • Limits
    • Media
    • Audit
    • Bug Bounty
    • Oracles
  • Permissionless Pools
    • Introduction
    • Risks
    • Pre-Listing Checklist
    • Listing a Pool
    • Post-Listing
    • Managing a Pool
    • Switchboard v2 Guide
    • Pool Ideas
  • Architecture
    • Building Blocks
    • Software Flowchart
    • Access Controls
    • User Instructions
    • Computing Supply & Borrows
    • cTokens
      • cToken Addresses
    • Addresses
      • Mainnet
        • Main Pools
        • Isolated Pools
      • Devnet
  • Integrations
    • Introduction
    • Integration Guide
    • Solend LITE
    • Liquidators
    • Flash Loans
    • Developer Referral Fee
    • Resources and FAQ
Powered by GitBook
On this page

Was this helpful?

  1. Architecture

Building Blocks

Lending Market Owner/Authority:

This is the account that owns the entire pool -there is one for Main, Isolated, and etc.

Lending Market (State)

This contains all the reserves.

Reserves State (Market-level Positions)

For every pool, each token has its own reserve. This is where supply/balances are tracked, and is updated using the account value * pyth_price pulled from oracles.

Obligations State (User-level positions)

Each user’s position is called an obligation, and is updated using RefreshObligation by calling Pyth_price + the % of Liquidity provided (for supply) or cumulative borrow rate (for borrows)

Reserves State:

  • Asset: Reserve Token

  • Address: Reserve Address that contains the ATA of the liquidity

  • CollateralMintAddress: cToken Mint Address

  • CollateralSupplyAddress: Where cTokens are held to be used as collateral

  • Liquidity Address: ATA of the Reserve that contains the tokens

  • LiquidityFeeReceiverAddress: Where borrow fees generated are held before being swept into the protocol treasury

Example:

        },
        {
          "asset": "UST",
          "address": "Ab48bKsiEzdm481mGaNVmv9m9DmXsWWxcYHM588M59Yd",
          "collateralMintAddress": "nZtL8HKX3aQtk3VpdvtdwPpXF2uMia522Pnan2meqdf",
          "collateralSupplyAddress": "4HXDioboWL85gQocYNkWM62AB5ctrf8jVykSVco67Lzx",
          "liquidityAddress": "5LyHdTXh1MSbRzE7xfTtfpV8W5eaySJnSiTs6FdHhrSo",
          "liquidityFeeReceiverAddress": "4GctGML68E1kDcvskGTXRPY9ngxmxVnJXjpsJ68YBXPR",
          "userSupplyCap": 5000000
        },
        {
PreviousPool IdeasNextSoftware Flowchart

Last updated 2 years ago

Was this helpful?