seaport-js: The fulfiller does not have the balances needed to fulfill.
Can someone help me understand why I get this error? I’m trying to buy a nft that’s listed on opensea. The fulfiller is the owner of the nft, correct? I verified that the owner address is right. The message sounds like seaport thinks the owner doesn’t have that token…
const provider = new ethers.providers.Web3Provider(window.ethereum)
const seaport = new Seaport(provider)
let [account] = await window.ethereum.enable()
const offerer = account // me
const fulfiller = "0x3649b5fA32d367BfAf218354cf5eB7Ab55AE1c46" // the address that owns the token
const { executeAllActions } = await seaport.createOrder(
{
offer: [
{
amount: ethers.utils.parseEther("0.0019").toString(),
recipient: fulfiller,
},
],
consideration: [
{
itemType: 2, //ItemType.ERC721,
token: "0x42921c64797b64499a3ad3a3cdbbfab7bee294fe",
identifier: "1262",
recipient: offerer,
},
],
},
offerer
)
const order = await executeAllActions()
console.log(order)
const { executeAllActions: executeAllFulfillActions } =
await seaport.fulfillOrder({
order,
accountAddress: account,
});
const transaction = executeAllFulfillActions();
About this issue
- Original URL
- State: closed
- Created 2 years ago
- Reactions: 1
- Comments: 15
Here is the link to my script file.
I have created 2 seaport instances for interaction with 2 different accounts.
Here is the link link
I think I understand. From this explanation, it sounds like the
seaport.createOrder
block is a bidding/buy order. Separately, the shortseaport.fulfillOrder
block is the other side of that transaction that a seller would make.It is confusing because the Seaport-js docs show the example as one full process to execute a bid/buy order.
While I not getting the error anymore because I’m not trying to run the
seaport.fulfillOrder
block as the bidder. Though, I’m not seeing the order show up on Opensea even though I can see that the order has been verified by following up theorder
with: