背景
目前我們常用的支付一般有微信支付,支付寶支付。但是針對部分平臺我們想使用區(qū)塊鏈支付,因此
區(qū)塊鏈支付平臺被開發(fā)出來。
部署錢包支付平臺(暫未開源)
- 上傳sqlite數(shù)據(jù)庫到服務(wù)器
- 配置錢包服務(wù)配置文件
- 上傳trade-wallet-watcher-0.0.3-SNAPSHOT.jar到服務(wù)器
- 運(yùn)行錢包服務(wù),并開放8897端口
對接后端
配置文件
注意,以下配置需要與錢包服務(wù)配置一致
# 錢包服務(wù)的網(wǎng)關(guān)
# 錢包服務(wù)IP(強(qiáng)烈內(nèi)網(wǎng),否則有資金分線)
app.pay.service.gateway=http://192.168.0.xxx:8897
# 訪問服務(wù)的TOKEN(調(diào)用錢包服務(wù)的token防止惡意調(diào)用)
app.pay.service.token=qwertyuiop
# 接收通知的簽名(充值,提現(xiàn),支付回調(diào)簽名用)
app.watcher.event.api-key=123456
編寫錢包接口,用于APP顯示
# header傳入token rpc服務(wù)為自研組件,可自行實(shí)現(xiàn)
header.put("API-TOKEN",apiToken);
/**
* 獲取錢包(不存在就創(chuàng)建新的錢包)
* @return
*/
@RequestMapping(value = "getWallet")
public ApiResult getWallet(){
Map<String,Object> params = new HashMap<>();
params.put("userId",getCurrentUserId());
ApiResult apiResult = rpcService.invoke(gateway, "getWallet", header, params, new TypeReference<ApiResult>() {});
if(apiResult.getStatus() == 500){
params.put("walletName",getCurrentUsername() + "的錢包");
apiResult = rpcService.invoke(gateway,"createWallet",header,params, new TypeReference<ApiResult>() {});
}
return apiResult;
}
APP效果如下
微信圖片編輯_20231210155703.jpg
前端編寫充值UI即可。
用戶只需要使用Tron錢包向該地址轉(zhuǎn)賬就可以直接實(shí)現(xiàn)充值,并且支持對資金的自動歸集。支持充值,提現(xiàn),支付回調(diào)到第三方業(yè)務(wù)平臺。
