Sanko Mainnet Docs
  • Sanko
    • What is Sanko?
    • Sanko Overview
      • AnyTrust and the Data Availability Committee
      • Keysets
      • Data Availability Certificates​
      • Data Posting Mechanisms
      • Data Availability Servers​
      • Sequencer-Committee Interaction
    • Official Links
  • Sanko Mainnet
    • Connect to Sanko Mainnet
    • Bridge to Sanko
    • Native DEXs
      • Sankoswap
      • Camelot Exchange
        • Camelot V2
        • Camelot V3
          • Concentrated Liquidity
          • Customizable Tickspacing
          • Directional & Dynamic Volatility Fees
    • Sudoswap
      • Sudoswap Overview
        • Bonding Curves
        • Royalties
        • Settings
        • Property Checking
        • ERC1155 NFTs
      • User Guide
        • Creating a Liquidity Pool
        • Managing Existing Pools
        • Creating an Auction
        • Managing Collections
    • SankoTools
      • Terminal Elements
        • Research Elements
        • Chaindata Elements
        • Market Data Elements
        • NFT Elements
        • Chart Elements
        • Liquidity Elements
        • Portfolio Elements
        • Utility Elements
    • Run a Sanko node
  • $DMT
    • The Dream Machine Token (DMT)
    • What is $DMT?
      • How to Purchase $DMT on Arbitrum
      • How to Purchase $DMT on Ethereum
    • The Dream Machine
    • Tokenomics
  • Build on Sanko
    • Connect to Sanko Testnet
    • Deploy on Sanko Testnet
      • Foundry
      • Hardhat
      • Remix
    • Testnet Info + Faucet
    • Testnet Bridge
    • Testnet Block Explorer
    • Pyth Entropy (RNG)
  • miscellaneous
    • Sanko Terms of Use
    • Sanko Privacy Policy
    • FAQ
    • Notice
Powered by GitBook
On this page
  1. Sanko Mainnet
  2. Sudoswap
  3. Sudoswap Overview

Royalties

PreviousBonding CurvesNextSettings

Last updated 12 months ago

Royalties are enforced on liquidity pools at the contract level. Royalties are automatically enabled for collections implementing the .

Royalty Engine

The RoyaltyEngine contract is a fork of the created by Manifold as part of the Royalty Registry initiative. This contract determines the provisional value of royalties due for a swap of given value and the address that should receive them. If a collection implements ERC2981, the RoyaltyEngine retrieves royalty information from the collection contract itself.

Royalty information returned from the engine is used in the _calculateRoyalties function on pair contracts, which is called internally by all swap methods, unless:

  • The royalty exceeds the sale price, in which case no royalty is applied.

  • A Setting is in place for the pool.

When a Setting is in place for a given pair, the _calculateRoyalties function will overwrite the royalty value returned by the RoyaltyEngine using the getFeeSplitBps view on the Setting contract.

ERC2981 royalty standard
Royalty Engine