挂单规则写进合约:Manifold Marketplace 的两类挂单与身份验证器 图 1
挂单规则写进合约:Manifold Marketplace 的两类挂单与身份验证器 · 图 1

同一个项目的 NFT,什么时候能出价、谁能出价、用什么币出价,在 Manifold 的 Marketplace 合约里都有对应参数。与在公池市场挂单不同,这条路线把挂单规则搬进合约本身,于是“市场规则”第一次成为项目方可以直接编程的一环。以下内容依据 docs.manifold.xyz 的 Marketplace 与 Identity Verifier 两页整理,合约地址与接口以官方文档当日版本为准。

官方文档把挂单分成两类:拍卖型对一个 NFT 开放竞价,购买型以固定价成交、同一 NFT 的多个版次也可以列在同一笔购买挂单里。两类挂单共享一组创建参数:起始时间是可选的,不填则首次出价或购买即开始;结束时间也是可选的,且在不设起始时间时,它表示的是持续秒数而非时刻——这一点对习惯日历时间的直觉是个陷阱。底价参数在两类挂单里含义不同:拍卖型里它是首次出价的最低门槛,购买型里它就是成交价本身。拍卖型另有出价最小步长与延长窗口:落在剩余时间窗口内的新出价会把截止时间往后推,防止最后一秒狙击。

支付币种是另一个可调项。挂单可以指定一个 ERC-20 合约地址作为结算货币,不填走 ETH。对买家,这意味着核对弹窗里的“将要划转的资产”可能不是原生币,代币地址要看清;对项目方,指定代币结算等于把自己暴露在该代币的价格与合约风险之下,属于定价之外的决策。

最特别的是身份验证器槽位。创建挂单时可以填一个合约地址,之后每一笔出价或购买在成交前都会调用该合约的 verify 函数,返回 false 就直接拒绝——官方文档举的例子是 KYC 与白名单售卖。接口要求合约实现 IIdentityVerifier 并通过 ERC-165 声明;另有一个可选的 IIdentityVerifierCheck,提供一个只读检查函数,让前端在提交前先回答“这个地址现在有没有资格”,避免用户白签一次。verify 函数可以在链下逻辑里判断,但判断结果链上强制执行,两者边界要说清。

ERC-20 结算那一项还有一个容易被低估的后果:挂单里写的代币地址决定成交后你收到的资产,而代币的同名问题在任何链上都存在。两个名字相近的稳定币合约地址可以同时在同一市场挂同一枚 NFT,价格数字看起来一样,结算资产却可能是一个主流、一个无人接收。所以读 Manifold 挂单详情时,看到非原生币计价就把地址抄下来回浏览器看代币合约与流通量,这一步不需要专业知识,只需要一次复制粘贴。对卖家,选代币结算前先确认自己愿意长期持有该资产,因为收进钱包之后要不要换、换成什么,就又成了一次独立的资产决策。

把参数表读完后,还有一个产品层的观察值得记录:这套挂单体系把“规则前置”做到了少见的程度。传统市场里拍卖延时、出价步长、买家资格往往藏在平台政策文本里,用户靠经验与客诉摸底;在 Manifold 的挂单里,这些规则每一项都对应合约参数或一个可查询的验证器合约地址,任何人在出价前就能把规则本身调出来复核。对重度用户,这意味着尽调对象从“平台信誉”变成了“参数与代码”;对普通买家,收益则更朴素——出价前花两分钟读一遍挂单详情,比事后翻帮助文档或争论“为什么我的出价被拒”便宜得多。

最后提醒一次读法:本文所有参数语义都以“创建时写入合约”为前提,卖家在挂单前把参数逐条确认一遍,买家在出价前把挂单详情逐条读一遍,两边各守一道,规则才真正闭环。合约参数不会随客服口径变化,会变的是读它的人的耐心。

主网合约地址在文档里公开,其他链另列。核对一份 Manifold 挂单是否“被动过手脚”,顺序是:确认你签的确实是文档列出的合约,再读回挂单参数:起止时间语义、底价、结算代币、验证器地址。规则全写在合约参数里,不需要信任何人的截图。本文为机制说明,不构成任何投资建议。

挂单规则写进合约:Manifold Marketplace 的两类挂单与身份验证器 图 2
挂单规则写进合约:Manifold Marketplace 的两类挂单与身份验证器 · 图 2