收币合约
BlockATM 收币合约分为两类:Web3收币合约、扫码收币合约
Web3收币合约
Web3收币合约提供安全可靠的收币支付方式,用户通过连接钱包并授权智能合约自动执行交易完成支付,用户支付的加密货币直接转入Web3收币合约,有且只有合约中指定的"授权签名地址"有权限提币,并且只能提到合约中指定的"资产接收地址"。
扫码收币合约
扫码收币合约提供方便快捷的收币支付方式,用户通过手机钱包扫描接收地址的二维码进行转账支付,有且只有合约中指定的"授权签名地址"有权限提币,并且只能提到合约中指定的"资产接收地址"。
合约权限说明
地址类型
说明
权限
管理员地址
创建收币合约的钱包地址
管理收币合约
授权签名地址
有权限提取收币合约资产的钱包地址
提取合约资产
资产接收地址
有权限接收收币合约资产的钱包地址
接收合约资产
收币智能合约代码
/**
函数:constructor
功能:商户在部署收款合约时,在合约部署时设定提现地址、财务人员地址、管理员等
@param newWithdrawList 提现地址列表,在合约部署时写入后不可修改
@param newFinanceList 财务人员地址列表,在合约部署时写入后不可修改
@notice 该构造函数用于初始化合约的关键参数和权限设置。
@notice 提现地址列表和财务地址列表不能为空,确保合约初始化时具备必要的权限配置。
@notice 手续费网关地址用于处理与费用相关的逻辑,确保系统收益和费用扣除的透明性。
*/
constructor(
bool safe,
uint256 id,
address[] memory newWithdrawList,
address[] memory newFinanceList,
address newFeeGateway
) {
//参数安全性检查
...
// 设置提币地址
processList(newWithdrawList, withdrawMap);
withdrawList = newWithdrawList;
// 设置财务地址
processList(newFinanceList, financeMap);
financeList = newFinanceList;
//其他参数设置
....
// 设置合约owner
owner = msg.sender;
}历史合约版本
V2
2025 年 4 月 17 日
独立收银台主体,解藕收币合约与收银台,实现由企业自主决定收银台关联的收币合约
更改收币手续费规则:从押金抵扣方式改为从收币合约余额中收取,降低企业展业成本
V1
2023 年 7 月 10 日
收币合约指定了授权签名地址和资产接收地址,只有授权签名地址有权限提取合约资产到资产接收地址
Last updated