区块链支付系统/USDT支付系统,使用方式介绍(附:源代码)
Tether公司发行发行的USDT稳定币一共有三种类型,分别是基于比特币、以太坊和TRON。基于比特币和基于以太坊的USDT,两者不兼容、不能相互转账。
第一种是基于比特币的USDT (基于Omni协议发行)。 这种USDT存储在比特币地址上,所以每次转账(链上转账)时,都需要支付少量的比特币作为矿工费。
第二种是基于以太坊的USDT(基于ERC-20协议发行)。这种USDT存储在以太坊地址上,相对应的,每次转账(链上转账)时,需要消耗Gas,也就是ETH。
第三种USDT是基于TRON网络(波场)发行的USDT。基于TRON网络的TRC-20 USDT,存储在TRON的地址当中,充值、提现都是通过TRON网络进行,而且转账免费。
UanApi是最佳USDT.TRC20收款接口服务,旨在利用区块链+大数据技术为用户提供安全可靠的区块链技术服务。
· 作为业内领先的区块链技术服务商,将自己强大的链上数据能力,以API的方式为开发者提供高质量的技术支持。
· 开发人员使用GET或POST请求,通过RestAPI直接访问链上的数据服务,用于构建相关应用程序。
开发者文档:
- UanApi为机构客户、开发者及研究者提供强大的API工具产品,API涵盖创建地址、链上交易及地址分析等,可免除自建节点、减少运维成本。
- UanApi提供了简单而强大的RestAPI接口服务,您可以从众多API端点当中选用您需要的接口功能,来构建您的应用程序。
- 非常适用于学习研究、数字交易所、数字钱包、游戏、媒体、电商等群体。
/**
* USDT转账 - (API接口文档:uanapi.com)
* @param fromAccount 转账的账户
* @param fromPrivateKey 转账账户的私钥
* @param toAccount 要转给的账户
* @param contractAddress TRC20的合同地址
* @param sunAmount 转账金额
* @return
*/
public String transferUSDT(String fromAccount,String fromPrivateKey,String toAccount,
String contractAddress,String sunAmount){
String hashNumber = null;
ApiWrapper wrapper = ApiWrapper.ofShasta(fromPrivateKey);
try {
Contract contract = wrapper.getContract(contractAddress); //trc20合同地址 usdt
Trc20Contract token = new Trc20Contract(contract, fromAccount, wrapper); //trc20的合同token
BigInteger usdtValue = token.balanceOf(fromAccount); //获取转账账户的USDT余额
BigInteger sunAmountValue = Convert.toSun(sunAmount, Convert.Unit.TRX).toBigInteger(); //获取想要转账的数额
if (usdtValue.compareTo(sunAmountValue) >= 0) { //进行比较
long l = Convert.toSun("10", Convert.Unit.TRX).longValue(); //设置最大矿工费用
hashNumber = token.transfer(toAccount, sunAmountValue.longValue(), 0, "备注", l); //转账
}
} catch (Exception e) {
throw new RuntimeException(e);
}
return hashNumber;
}
详情访问网站API接口文档uanapi.com