You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Metaplex更新Solana NFT时遇funding tx提交失败错误求助

Solana NFT元数据更新Arweave时"Fund Tx Not Found"错误解决
  • 核查Arweave资金交易状态
    错误中给出的交易ID 4tSgRoDyCwaT9DwK8GsnMTPeYfPZCwi4W3tpiTeei1H7WBZ9LEbbPthRaLBLXzGqLVoQQmwqmXpZd7ciKwHH3gCw,需先确认该交易是否在Solana链上完成最终确认。使用Solana CLI执行以下命令查询:

    solana confirm-transaction 4tSgRoDyCwaT9DwK8GsnMTPeYfPZCwi4W3tpiTeei1H7WBZ9LEbbPthRaLBLXzGqLVoQQmwqmXpZd7ciKwHH3gCw --commitment finalized
    

    若交易未确认或失败,需重新发起资金交易,确保支付Arweave存储费用的钱包有足够SOL余额。

  • 确认Metaplex的Arweave资金配置
    检查Metaplex实例使用的支付钱包是否正确,该钱包需有充足SOL用于覆盖Arweave的存储成本。若使用默认配置,会自动关联当前连接的钱包,直接查看该钱包余额即可。

  • 重新生成并上传元数据
    原metadataUri关联的资金交易可能无效,尝试重新生成元数据JSON文件,通过Metaplex存储模块重新上传至Arweave,获取新的URI后再执行更新:

    // 上传更新后的元数据
    const { uri: newMetadataUri } = await METAPLEX.storage().upload(updatedMetadataJson);
    // 执行NFT更新
    await METAPLEX.nfts().update({
      name: newName,
      nftOrSft: nft,
      uri: newMetadataUri
    }, { commitment: 'finalized' });
    
  • 优化交易确认逻辑
    即便设置了commitment: 'finalized',仍可在更新操作前添加资金交易的确认步骤,确保交易完全上链:

    // 等待资金交易最终确认
    await connection.confirmTransaction(fundTxId, 'finalized');
    // 再执行NFT更新
    await METAPLEX.nfts().update({...}, { commitment: 'finalized' });
    
  • 检查节点连接稳定性
    若网络波动导致交易未被正确广播,可切换至Solana官方公共节点(主网https://api.mainnet-beta.solana.com、测试网https://api.devnet.solana.com),重新尝试操作。

内容的提问来源于stack exchange,提问作者Alchemist

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 10:35:47