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

Candy Machine v2如何配置多白名单实现分时段差异化定价铸造

Candy Machine v2 多阶梯白名单分时段铸造实现方案

原生单实例Candy Machine v2 无法直接实现你描述的3组差异化定价白名单分阶段开放、前序白名单权限保留的需求。
你提到的endSettings参数仅支持配置全局铸造截止规则,要么按时间截止、要么按总铸造量截止,不支持分时段触发不同权限/定价规则;同时CMv2原生的whitelistMintSettings仅能绑定单个SPL代币作为白名单凭证,也只能设置一个白名单优惠价,没法同时适配3组不同价格、不同生效时间的白名单逻辑。

可落地实现方案

方案1:多CMv2实例路由(无合约修改,稳定性最高,项目最常用)

不需要修改CMv2原生合约,通过部署多个独立CM实例+前端路由即可完全匹配需求:

  • 共部署4个独立CMv2实例,所有实例共享同一份NFT元数据、合集创作者配置,保证铸造出的NFT属于同一合集无差异,每个实例单独配置规则、分配对应额度:
    • CM1(WL1专属通道):绑定WL1对应的SPL白名单代币,铸造价格0.7SOL,上线时间设为10:00对应时间戳,关闭公铸权限,仅白名单地址可铸造,分配WL1总配额对应的NFT数量,不设置铸造截止时间,只要用户持有WL1凭证、CM1还有剩余额度,就能一直以0.7SOL价格铸造
    • CM2(WL2专属通道):绑定WL2对应的SPL白名单代币,铸造价格0.8SOL,上线时间设为11:00对应时间戳,关闭公铸权限,仅白名单地址可铸造,分配WL2总配额对应的NFT数量,同样不设置提前截止,额度耗尽前WL2用户随时可铸
    • CM3(WL3专属通道):绑定WL3对应的SPL白名单代币,铸造价格0.9SOL,上线时间设为12:00对应时间戳,关闭公铸权限,仅白名单地址可铸造,分配WL3总配额对应的NFT数量,不提前截止
    • CM4(公铸通道):不配置任何白名单规则,公铸价格1SOL,上线时间设为13:00对应时间戳,分配剩余所有NFT额度
  • 前端逻辑:用户连接钱包后,前端自动扫描用户钱包内持有的白名单SPL凭证,按照价格从低到高的优先级展示可用铸造入口:持有WL1就优先展示0.7SOL铸造按钮,持有WL2则展示0.8SOL入口,持有WL3展示0.9SOL入口,13:00后所有连接钱包的用户都能看到1SOL公铸入口。

方案2:单CMv2实例+自定义校验代理合约(适合有合约开发能力的团队)

如果不想部署多实例,可以通过一层代理合约包装原生CMv2逻辑实现:

  • 原生CMv2仅配置公铸规则:公铸价格1SOL,上线时间13:00,不配置原生白名单
  • 额外部署一个轻量代理合约,提前把WL1/WL2/WL3的地址列表、对应价格、生效时间硬编码或通过后台可控配置,用户铸造时优先调用代理合约:
    • 10:00-11:00,代理合约仅校验到调用地址属于WL1列表时,才允许用户传入0.7SOL的支付值调用CMv2铸造接口
    • 11:00-12:00,代理合约新增WL2地址校验,WL1地址仍可走0.7SOL支付逻辑,WL2地址可走0.8SOL支付逻辑
    • 12:00-13:00,代理合约新增WL3地址校验,WL1、WL2原有权限不变,WL3地址可走0.9SOL支付逻辑
    • 13:00后,代理合约关闭白名单校验,所有地址都可直接传入1SOL支付值调用铸造接口
  • 该方案需要自行开发代理合约,做好权限校验防漏洞,整体开发测试成本高于多实例方案。

核心配置参考(多实例方案)

以WL1对应的CM1实例为例,config.json中白名单相关核心配置如下:

{
  "whitelistMintSettings": {
    "mint": "WL1_SPL代币的铸币地址",
    "presale": true,
    "discountPrice": 0.7,
    "mode": { "burnEveryTime": true },
    "maxSupply": WL1阶段分配的NFT总数量,
    "whitelistMintTimeStart": 10点对应的Unix时间戳
  },
  "goLiveDate": "10点对应的Unix时间戳",
  "endSettings": null
}

WL2、WL3对应的CM实例仅需要替换对应SPL代币地址、价格、上线时间、配额参数即可,公铸CM实例直接删除whitelistMintSettings配置,将价格改为1、上线时间设为13点对应时间戳即可。

注意:不要给前三个白名单CM配置endSettings的时间截止规则,留空即可,只要CM还有剩余额度,对应白名单用户随时可以铸造,自然满足前序白名单权限持续保留的需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 18:24:45