I am new to blockchain application development and trying to create a smart contract in ERC 721. Currently, I implement a system with the help of a database where minting is only possible by the owner. In that case, I take the fee from the user and save the transaction hash to the database. If the owner thinks all information is correct then the owner will mint this NFT from the owner's wallet to the user's wallet. But the problem, in this case, is that gas fee has to be paid twice.
As far as I know, minting can be done from that address if the owner approves it beforehand. But I want to do it a little differently. Eg - I wanted to implement an authorization system for each minting. That is, when the user mints an NFT, it will wait for the approval. It will be minted if the owner approves it. Is it really possible?
Any suggestions would be highly appreciated!Thank you