Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Royalty info for existing NFT721 contracts #62

Open
fkammer opened this issue Oct 13, 2021 · 0 comments
Open

Royalty info for existing NFT721 contracts #62

fkammer opened this issue Oct 13, 2021 · 0 comments

Comments

@fkammer
Copy link

fkammer commented Oct 13, 2021

The _transferFeesAndFunds method of BaseExchange.sol tries to retrieve the royalty info from the NFT contract. This requires the contract to implement the ERC2981.

try IERC2981(token).royaltyInfo(tokenId, amount) returns (
address royaltyFeeRecipient,
uint256 royaltyFeeAmount
) {
if (royaltyFeeAmount > 0) {
remainder -= royaltyFeeAmount;
_transferRoyaltyFee(currency, royaltyFeeRecipient, royaltyFeeAmount);
}
} catch {}

As I understand, for contracts not created via Shoyu and thus probably not having an exchange implemented, ERC721ExchangeV0.sol should act as a more generic version of the exchange allowing to trade allowed NFTs.

Shouldn't we allow existing NFT projects to set a royalty fee if ERC2981 isn't implemented in their existing contract? I'm concerned the marketplace wouldn't be a good fit for a lot of the existing projects otherwise.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant