We know some partners require smart contract migration to enforce royalties and highlight that via their own marketplace, so this doc outlines the code necessary to do so by implementing the ‘operator’ filter into your new smart contract.


Here's the solidity code which shows an ERC721 contract that enforces a blocklist on the approve and approveAll functions

  1. Removing the ability for token holders to list their token or accept any offers (i.e. rendering their token(s) non-tradable via the blocked marketplaces).

    MarketBlock721 (1).sol

The contract includes MarketplaceBlockList array which contains some initial values; this is the list of contracts to block & can be updated after contract deployment via the public add and remove functions (restricted to only the contract owner).

Here's the necessary mainnet version of the code which blocks Blur, LooksRare & SudoSwap

MarketBlock721.sol