Interacting/Selling a token originating from a different contract


I am working on developing an NFT contract. So far things are good, and my contract works as intended. As I go farther into development, though, there are a couple things that I do not seem to understand that I am hoping to get clarification on before I move forward.

The big question going on in my mind has to deal with selling NFTs that originate from a different contract. For example, I believe I read somewhere that as long as the metadata was formatted correctly, that opensea would allow you to sell any ethereum NFT that is in your wallet on their marketplace. As far as I understand, when a contract creates an NFT, the NFT token is tied to the contract that created it. How does one sell an NFT that was created by a different ETH contract?

Hopefully this is not a frequently asked question, or hopefully I do not have some understanding of NFTs completely wrong.

I appreciate any help!

I think most of your understanding is correct but I'm not sure I understand this qn

How does one sell an NFT that was created by a different ETH contract?

They can sell it because it's a different NFT contract. Your NFT contract might be 0x1234 and it's for dragons but my NFT contract might be 0x4321 and it's for monkeys. As long as both our NFTs' metadata comply w/ what Opensea wants then we can both list on Opensea and sell.

I guess to better state my question, on a technical level, how does selling a token from a different contract work? I will use you examples of contracts to try and state my question better.

My contract, 0x1234, has some functions including mint and transfer. Any NFT that has been minted on my contract is directly tied to my contract, and I am able to transfer it to someone else because I am the owner of contract 0x1234, therefore I know and can call the transfer function for the NFT.

Say someone uses my application and brings an NFT that is in their wallet that comes from someone else's NFT generating contract. How could my application go about selling that persons NFT? I am not the owner of the contract that minted the NFT, nor do I know any of the functions within the contract. So if someone does bring my application an NFT that originated on another contract, how would I go about selling it for them?

Hopefully this makes more sense than my original question.