Discussion about this post

User's avatar
Kaiesh's avatar

Great article, and it is timely.

There is actually something that can be done in code here. Both the ERC1155 and ERC721 standard use the approveForAll function to allow marketplaces to trade the tokens on behalf of the owner. It is possible for the NFT creator to upgrade the implementation of this function so that only certain addresses are whitelisted (i.e. the marketplaces which honour the artist commissions), which would stick the first hurdle in the way of bypassing royalty payments.

Secondly, the actual NFT transfer function can be modified such that if the transfer is not happening via an approved marketplace, that the transfer function itself can demand a minimum transfer tax be paid to the owner in order for the transfer to happen at all.

So in effect the user is forced to either a use an honourable marketplace, or pay the creator a fixed tax.

With this simple combination, you can begin to control your own royalties.

Expand full comment
osaka.toni.thomas's avatar

Great post. Been thinking abut this a lot recently. I believe it's possible to force royalties in the contract if you do these 2 things:

1) The transfer of funds needs to be baked into the NFT contract (so royalties can always be taken)

2) Attempts to trade tokens below the market price need to be punished

You can achieve this quite simply using a method similar to the hamburger tax.

The owner must set a listing price in order to transfer the NFT. Anyone is able to buy at that price. If the price is too low it will be sniped.

This creates some limitations, like making it costly to transfer between your own wallets, or sending the NFT to other smart contracts for example. But I think these can be solved by separating the "owner" and "controller". Just like ENS

Another benefit of this approach is that marketplaces lose their network effect, making NFTs more open as the actual selling mechanism is on the NFT itself.

DM me @osakatonithomas, I want to test this on a collection

Expand full comment
5 more comments...

No posts