Synthetix Docs
  • User Docs
  • Synthetix Exchange
  • Leveraged Tokens
  • For Developers
  • Orientation
  • Synthetix Overview
  • Development Progress
  • V3 FAQ
  • For Developers
    • Technical Architecture
    • Quick Start
      • Base Quickstart
    • Smart Contracts
    • Data Platform
    • Data Dictionary
    • Addresses + ABIs
    • Deployment Info
      • Mainnet
      • Sepolia
      • Sepolia Carina
      • Optimism Mainnet
      • Base Mainnet Andromeda
      • Base Sepolia Andromeda
      • Arbitrum Mainnet
      • Arbitrum Sepolia
    • Smart Contract Audits
    • Perps Market
    • Spot Market
    • Developer FAQ
  • For Perp Integrators
    • 101
    • Perps V3
    • L1 Perp (BFP)
    • Base Andromeda
    • Perps Python SDK
    • Perps V3 Keepers
  • For Liquidity Integrators
    • Creating Accounts
    • Delegating Collateral
      • Liquidity Pools
    • Liquidity Positions
      • Minting and Burning snxUSD
      • Position Liquidations
    • Base LP Guide
  • For Liquidity Pool Managers
    • Creating and Configuring Pools and Vaults
    • Collateral Vaults
      • Vault Liquidations
    • Rewards Distributors
    • Credit and Debt Distribution
  • For Derivatives Market Builders
    • Build on v3
    • Market Development Guide
    • Build on v3 FAQ
    • Operating a Market
    • Registering a Market
  • For Governance Participants
    • Synthetix Governance
    • Elections
  • For Designers
    • Design Resources
Powered by GitBook
On this page
  1. For Liquidity Integrators

Delegating Collateral

PreviousCreating AccountsNextLiquidity Pools

Last updated 8 months ago

Providing liquidity to pools involves two function calls, deposit and delegateCollateral. deposit transfers collateral to the Synthetix Core address and associates it with the relevant account. delegateCollateral assigns the collateral to a pool, creating or updating a .

deposit and withdraw increase and decrease the amount of available collateral associated with an account. delegateCollateral will increase/decrease the amount of available collateral by altering the amount provided to a specified pool. These functions may be called together using the multicall function, so end users need to only execute one transaction.

When delegating, the position size must be greater than a minimum amount, specified by governance per collateral type. This generally serves as the for the position.

There are a few scenarios in which collateral may not have its delegation reduced or be withdrawn:

  • Delegated collateral may only be reduced if the liquidity position’s resulting C-Ratio is greater than the Issuance C-Ratio for its collateral type. In other words, liquidity providers can only retrieve their collateral if they pay off their debt.

  • Delegated collateral may not be adjusted unless the minimum collateral delegation duration has elapsed since the last time delegateCollateral was called pertaining to this liquidity position. This is a mechanism which allows markets to mitigate the risk of active liquidity providers front-running market activity.

Delegated collateral may not be reduced if the resulting credit capacity for any of the markets connected to the pool would drop below the market's .

Available collateral may not be withdrawn unless the globally configured withdraw timeout has elapsed since this account has last been interacted with. This is a global system safety parameter which may eventually be set to 0 via .

The types of collateral which are accepted by the protocol are configured globally by governance. Enabling, disabling, or changing the settings pertaining to collateral may be proposed via . Retrieve information about the currently accepted collateral types with the getCollateralConfigurations function.

minimum credit value
SCCP
SCCP
liquidity position
liquidation reward