I have moved forward with the contract of a marketplace in a modularised way, that is, I define a contract for the marketplace itself and another one for the auction. In the main contract I extend ERC721BurnableUpgradeable and in the Auction contract I extend ERC721HolderUpgradeable. To the ERC721HolderUpgradeable contract I pass in its migration the address of the main contract (which has an IERC721Upgradeable interface).
Everything went smoothly, mint, auction creation, 1-2-x placeBid... Now when I want to make the claim from the admin account I have this error that I don't understand why I get when I execute the safeTransferFrom method...
tokenContract.safeTransferFrom(msg.sender, _auction_bidder[tokenContract][tokenId], tokenId);
reason: 'ERC721: transfer caller is not owner nor approved'...
Any suggestions?
thanks