v03413 / bepusdt

一款更好用的个人USDT收款网关,兼容所有 Epusdt 插件,可无缝切换,支持交易所动态汇率、支持Docker一键部署;支持独角发卡 易支付 异次元发卡
GNU General Public License v3.0
334 stars 79 forks source link

Bepusdt (Better Easy Payment Usdt)

tether

license GPLV3 Go version 1.21 Gin Web Framework v1.9 Golang Telegram Bot Api-v5 Release v1.9.21

🪧 介绍

基本就是对Epusdt重新造了一次轮子,移除一些非必要依赖(Redis MySQL),同时加入一些新特性,让个人USDT.TRC20 收款更好用、部署更便捷!

🎉 新特性

🛠 参数配置

Bepusdt 所有参数都是以传递环境变量的方式进行配置,大部分参数含默认值,少量配置即可直接使用!

参数列表

参数名称 默认值 用法说明
EXPIRE_TIME 600 订单有效期,单位秒
USDT_RATE 6.4 USDT汇率,默认留空则获取Okx交易所的汇率(每分钟同步一次),支持多种写法,如:7.4 表示固定7.4、~1.02表示最新汇率上浮2%、~0.97表示最新汇率下浮3%、+0.3表示最新加0.3、-0.2表示最新减0.2,以此类推;如参数错误则使用固定值6.4
USDT_ATOM 0.01 0.01表示支付数额保留两位小数,相同金额时递增颗粒度为0.01,依次类推,如无特殊需求不建议修改。
TRX_RATE 0.95 同 USDT_RATE
TRX_ATOM 0.01 同 USDT_ATOM
AUTH_TOKEN 123234 认证Token,对接会用到这个参数
LISTEN :8080 服务器HTTP监听地址
TRADE_IS_CONFIRMED 0 是否需要网络确认,禁用可以提高回调速度,启用则可以防止交易失败
APP_URI 应用访问地址,留空则系统自动获取,前端收银台会用到,建议设置,例如:https://token-pay.example.com
WALLET_ADDRESS 启动时需要添加的钱包地址,多个请用半角符逗号,分开;当然,同样也支持通过机器人添加。
TG_BOT_TOKEN Telegram Bot Token,必须设置,否则无法使用
TG_BOT_ADMIN_ID Telegram Bot 管理员ID,必须设置,否则无法使用
TG_BOT_GROUP_ID Telegram 群组ID,设置之后机器人会将交易消息会推送到此群
PAYMENT_AMOUNT_RANGE 0.01,99999 支付监控的允许数额范围(闭区间),设置合理数值可避免一些诱导式诈骗交易提醒
TRON_GRPC_NODE 18.141.79.38:50051 Tron区块网络的GRPC节点,可选列表:https://developers.tron.network/docs/networks#public-node

Ps:所以综上所述,必须设置的参数有TG_BOT_TOKEN TG_BOT_ADMIN_ID,否则无法使用!

🚀 安装部署

🤔 常见问题

如何获取参数 TG_BOT_ADMIN_ID

Telegram 搜索@userinfobot机器人并启用,返回的ID就是TG_BOT_ADMIN_ID

⚠️ 特别注意

📚 接口文档

支付订单创建请求 ### 请求地址 ```http POST /api/v1/order/create-transaction ``` ### 请求数据 ```json { "trade_type": "usdt.trc20", // usdt.trc20(默认) 或 tron.trx "order_id": "787240927112940881", // 商户订单编号 "amount": 28.88, // 请求支付金额,CNY "signature":"123456abcd", // 签名 "notify_url": "https://example.com/callback", // 回调地址 "redirect_url": "https://example.com/callback" // 支付成功跳转地址 } ``` ### 响应内容 ```json { "status_code": 200, "message": "success", "data": { "trade_id": "b3d2477c-d945-41da-96b7-f925bbd1b415", // 本地交易ID "order_id": "787240927112940881", // 商户订单编号 "amount": "28.88", // 请求支付金额,CNY "actual_amount": "10", // 实际支付数额 usdt or trx "token": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", // 收款地址 "expiration_time": 1200, // 订单有效期,秒 "payment_url": "https://example.com//pay/checkout-counter/b3d2477c-d945-41da-96b7-f925bbd1b415" // 收银台地址 }, "request_id": "" } ```
支付成功回调通知 ```json { "trade_id": "b3d2477c-d945-41da-96b7-f925bbd1b415", "order_id": "787240927112940881", "amount": 28.88, "actual_amount": 10, "token": "TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t", "block_transaction_id": "12ef6267b42e43959795cf31808d0cc72b3d0a48953ed19c61d4b6665a341d10", "signature": "123456abcd", "status": 2 // 1:等待支付 2:支付成功 3:支付超时 } ```

🙏 感谢

📢 声明

🌟 Stargazers over time

Stargazers over time