I see some contracts (Dogami) say they take royalty fees even when they're sold on a 3rd party marketplace.

How does that work? As far as I can tell, this would require the FA2 contract to have an entry point that does the swap and money exchange. In addition, the transfer method would probably have to be removed? Because otherwise, what is stopping 3rd party marketplaces from doing the transfers in the first place...

2 Answers 2


As far as I can tell, the royalties are stored as metadata and then it's up to the marketplace to support that. Tezzard example:

"royalties": {
        "decimals": 2,
        "shares": {
            "tz1LLPWMyZ7gKsp3WnLfemyAYW6CoZoozku5": 5

This is a complete assumption, but it would be possible to enforce royalties on the contract level: when the transfer entrypoint of an FA2 contract is called with an amount of tez for the cost of the NFT, the contract could retrieve the original owner of the NFT and sends him a percentage of the total cost.
For example, I buy an NFT that costs 10 XTZ, I send 10 tez to the transfer entrypoint (along with the token id) and the contract splits the amount: 9 XTZ goes to the current owner of the NFT, 1 XTZ goes to the original owner, in the case of a 10% royalties. The contract would have to keep track of the original owner in its storage though.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.