I'm implementing a dApp to sell NFT's. I want the buyer to call the function on my smart contract to mint the NFT so that they pay for the gas fees. However it seems like they can't then transfer that NFT to themselves, is that correct?
How then can i call the transfer function so that they then get ownership of the token. Do i need to call the transfer function from my own address?
I was hoping to avoid that to 1) not pay gas fees and 2) not have to worry about managing nonce's in my application (as there can be concurrent calls to my app).
Is this the only way or is there a way around me having to call the function from my own account and incur the 2 above mentioned issues?