This demo represents more than just an NFT, but rather an end-to-end solution for a project.
As with every Selene Network compatible NFT, this smart contract implements all the standard NFT token interfaces that allow for ERC-721 functionality along with all the functions needed to ‘just work’ in the Selene Network.
Behind the scenes, this project uses ‘the broadcaster’ which is a software program that monitors for orders that result in minting the NFT on the Theta blockchain. When a user purchases the project NFT using a non-native token, the broadcaster code validates that the user sent the correct amount of coin and then performs the mint on behave of the project owner.
Keep in mind that one of the design criteria for the Selene Network is that all sales agents get their commission at the point of minting. This means that the NFT will not be minted on the Theta blockchain unless the broadcaster pays commissions. Because of this, the project owner is responsible for keeping the broadcaster funded and if that wallet doesn’t hold enough funds to pay commissions, cross chain minting is disabled until that wallet can pay commissions again.
The good news here is that when someone pays with crypto, the payment should be settled before the broadcaster wakes up to mint on the Theta blockchain.
Moving forward
Right now, the cross chain minting is limited to a few Ethereum compatible currencies. Moving forward, it makes sense to include paypal and bitcoin. If there is enough interest in this project, it might make sense to perform that work.
Special Note
The broadcaster updates a property on the minted token based upon the currency used to purchase the NFT. Thus, with this demo, there are currently 4 different NFT images. If I add another payment chain, I’ll also update this demo to include that new payment option.