We developing an NFT marketplace, and we have a strange problem.
After buying an NFT, the contract transfers the token from the seller to the buyer, but the problem is that we get the user’s tokens at the request of Moralis.Web3API.account.getNFTs({ chain: ‘ropsten’ })), but Moralis does not immediately process the transfer and some at that time, the token is still with the seller, although in fact it is already with the buyer (Under the contract).
What was the delay that you saw?
Do you also have an exact example?
We do wait for a number of blocks to consider the transaction as confirmed.
The problem is that no errors are displayed. There is a sale, the owner changes in the contract. But our frontend keeps getting data from Moralis that the NFT is still owned by the old owner. And after about 15 minutes everything starts to display correctly.
Another problem also occurs: some NFTs are simply frozen in the listing in the Moralis database. More precisely, they are removed from the listing in the Moralis database, but at the same time they remain in the listing of the contract and in fact it becomes impossible to do anything with them using Moralis.
Both problems are not accompanied by errors and therefore we cannot understand how to solve them or what we are doing wrong.
We will be glad to any advice.
Can you give an example here?
I don’t understand this part yet.
The part with the delay, there will be a delay, it shouldn’t be of 15 minutes but it will be a delay that can maybe be few minutes on testnet.