引言
Epusdt (全称: Easy Payment Usdt) 是Go语言编写的Usdt支付中间件 (Trc20网络) 的私有部署。
网站管理员或开发人员可以通过Epusdt提供的http api集成到您的任何系统中,而无需过度配置,仅依靠mysql和redis。
可以实现USDT在线支付和消息回拨,所有这些都在优雅而即时的完成!🎉
私有构建允许Usdt令牌直接进入您的钱包,而无需额外的费用和签名费。💰。
项目特点
- 支持私有化部署,无需担忧钱包被窜改和吞单😁
- Go言语跨平台完成,支持x86和arm芯片架构的win/linux设备
- 多钱包地址轮询,进步订单并发率
- 异步队列呼应,优雅及高性能
- 无需额定环境配置,仅运转一个编译后二进制文件即可运用
- 支持http api,其他零碎亦可接入
- Telegram机器人接入,便捷运用和领取音讯疾速告诉
项目结构
Epusdt├── plugins ---> (已集成的插件库,例如dujiaoka)├── src ---> (项目核心目录)├── sdk ---> (接入SDK)├── sql ---> (安装sql文件或更新sql文件)└── wiki ---> (知识库)Epusdt ├── plugins ---> (已集成的插件库,例如dujiaoka) ├── src ---> (项目核心目录) ├── sdk ---> (接入SDK) ├── sql ---> (安装sql文件或更新sql文件) └── wiki ---> (知识库)Epusdt ├── plugins ---> (已集成的插件库,例如dujiaoka) ├── src ---> (项目核心目录) ├── sdk ---> (接入SDK) ├── sql ---> (安装sql文件或更新sql文件) └── wiki ---> (知识库)
Epusdt下载
https://github.com/assimon/epusdt/releases/tag/v0.0.3
使用方法
请确保曾经安装并启动了
准备一个telgeram机器人🤖(用于操作你的钱包和接收通知),教程参考:https://w37fhy.cn/2364.html
准备一个收银台域名,并完成解析(例如:upay.vs98k.cn)。用于领取恳求发起和扫码页面
在宝塔面板网站里新增一个网站,无需php和ftp纯静态即可,但是需要数据库!
将提前解析好的收银台域名绑定。
![图片[1]-开源免费的跨平台USDT收付款Epusdt搭建 - 毕方资源网-毕方资源网](https://cos.vs98k.cn/2023/09/20230925223437132.png)
-- auto-generated definitioncreate table orders(id int auto_incrementprimary key,trade_id varchar(32) not null comment 'epusdt订单号',order_id varchar(32) not null comment '客户交易id',block_transaction_id varchar(128) null comment '区块唯一编号',actual_amount decimal(19, 4) not null comment '订单实际需要支付的金额,保留4位小数',amount decimal(19, 4) not null comment '订单金额,保留4位小数',token varchar(50) not null comment '所属钱包地址',status int default 1 not null comment '1:等待支付,2:支付成功,3:已过期',notify_url varchar(128) not null comment '异步回调地址',redirect_url varchar(128) null comment '同步回调地址',callback_num int default 0 null comment '回调次数',callback_confirm int default 2 null comment '回调是否已确认? 1是 2否',created_at timestamp null,updated_at timestamp null,deleted_at timestamp null,constraint orders_order_id_uindexunique (order_id),constraint orders_trade_id_uindexunique (trade_id));create index orders_block_transaction_id_indexon orders (block_transaction_id);-- auto-generated definitioncreate table wallet_address(id int auto_incrementprimary key,token varchar(50) not null comment '钱包token',status int default 1 not null comment '1:启用 2:禁用',created_at timestamp null,updated_at timestamp null,deleted_at timestamp null)comment '钱包表';create index wallet_address_token_indexon wallet_address (token);-- auto-generated definition create table orders ( id int auto_increment primary key, trade_id varchar(32) not null comment 'epusdt订单号', order_id varchar(32) not null comment '客户交易id', block_transaction_id varchar(128) null comment '区块唯一编号', actual_amount decimal(19, 4) not null comment '订单实际需要支付的金额,保留4位小数', amount decimal(19, 4) not null comment '订单金额,保留4位小数', token varchar(50) not null comment '所属钱包地址', status int default 1 not null comment '1:等待支付,2:支付成功,3:已过期', notify_url varchar(128) not null comment '异步回调地址', redirect_url varchar(128) null comment '同步回调地址', callback_num int default 0 null comment '回调次数', callback_confirm int default 2 null comment '回调是否已确认? 1是 2否', created_at timestamp null, updated_at timestamp null, deleted_at timestamp null, constraint orders_order_id_uindex unique (order_id), constraint orders_trade_id_uindex unique (trade_id) ); create index orders_block_transaction_id_index on orders (block_transaction_id); -- auto-generated definition create table wallet_address ( id int auto_increment primary key, token varchar(50) not null comment '钱包token', status int default 1 not null comment '1:启用 2:禁用', created_at timestamp null, updated_at timestamp null, deleted_at timestamp null ) comment '钱包表'; create index wallet_address_token_index on wallet_address (token);-- auto-generated definition create table orders ( id int auto_increment primary key, trade_id varchar(32) not null comment 'epusdt订单号', order_id varchar(32) not null comment '客户交易id', block_transaction_id varchar(128) null comment '区块唯一编号', actual_amount decimal(19, 4) not null comment '订单实际需要支付的金额,保留4位小数', amount decimal(19, 4) not null comment '订单金额,保留4位小数', token varchar(50) not null comment '所属钱包地址', status int default 1 not null comment '1:等待支付,2:支付成功,3:已过期', notify_url varchar(128) not null comment '异步回调地址', redirect_url varchar(128) null comment '同步回调地址', callback_num int default 0 null comment '回调次数', callback_confirm int default 2 null comment '回调是否已确认? 1是 2否', created_at timestamp null, updated_at timestamp null, deleted_at timestamp null, constraint orders_order_id_uindex unique (order_id), constraint orders_trade_id_uindex unique (trade_id) ); create index orders_block_transaction_id_index on orders (block_transaction_id); -- auto-generated definition create table wallet_address ( id int auto_increment primary key, token varchar(50) not null comment '钱包token', status int default 1 not null comment '1:启用 2:禁用', created_at timestamp null, updated_at timestamp null, deleted_at timestamp null ) comment '钱包表'; create index wallet_address_token_index on wallet_address (token);
1.将编译好的Epusdt项目压缩包上传至刚刚新增的网站目录,随后解压。
![图片[2]-开源免费的跨平台USDT收付款Epusdt搭建 - 毕方资源网-毕方资源网](https://cos.vs98k.cn/2023/09/20230925223734776-1024x432.png)
2.将.env.example重命名为
3.编辑.env文件,填入你的配置
app_name=epusdt#下面配置你的域名,收银台会需要app_uri=https://upay.dujiaoka.com#是否开启debug,默认falseapp_debug=false#http服务监听端口http_listen=:8000#静态资源文件目录static_path=/static#缓存路径runtime_root_path=/runtime#日志配置log_save_path=/logslog_max_size=32log_max_age=7max_backups=3# mysql配置mysql_host=127.0.0.1mysql_port=3306mysql_user=mysql账号mysql_passwd=mysql密码mysql_database=数据库mysql_table_prefix=mysql_max_idle_conns=10mysql_max_open_conns=100mysql_max_life_time=6# redis配置redis_host=127.0.0.1redis_port=6379redis_passwd=redis_db=5redis_pool_size=5redis_max_retries=3redis_idle_timeout=1000# 消息队列配置queue_concurrency=10queue_level_critical=6queue_level_default=3queue_level_low=1#机器人Apitokentg_bot_token=#telegram代理url(大陆地区服务器可使用一台国外服务器做反代tg的url),如果运行的本来就是境外服务器,则无需填写tg_proxy=#管理员useridtg_manage=#api接口认证token(用于发起交易的签名认证,请勿外泄)api_auth_token=#订单过期时间(单位分钟)order_expiration_time=10#强制汇率(设置此参数后每笔交易将按照此汇率计算,例如:6.4)forced_usdt_rate=app_name=epusdt #下面配置你的域名,收银台会需要 app_uri=https://upay.dujiaoka.com #是否开启debug,默认false app_debug=false #http服务监听端口 http_listen=:8000 #静态资源文件目录 static_path=/static #缓存路径 runtime_root_path=/runtime #日志配置 log_save_path=/logs log_max_size=32 log_max_age=7 max_backups=3 # mysql配置 mysql_host=127.0.0.1 mysql_port=3306 mysql_user=mysql账号 mysql_passwd=mysql密码 mysql_database=数据库 mysql_table_prefix= mysql_max_idle_conns=10 mysql_max_open_conns=100 mysql_max_life_time=6 # redis配置 redis_host=127.0.0.1 redis_port=6379 redis_passwd= redis_db=5 redis_pool_size=5 redis_max_retries=3 redis_idle_timeout=1000 # 消息队列配置 queue_concurrency=10 queue_level_critical=6 queue_level_default=3 queue_level_low=1 #机器人Apitoken tg_bot_token= #telegram代理url(大陆地区服务器可使用一台国外服务器做反代tg的url),如果运行的本来就是境外服务器,则无需填写 tg_proxy= #管理员userid tg_manage= #api接口认证token(用于发起交易的签名认证,请勿外泄) api_auth_token= #订单过期时间(单位分钟) order_expiration_time=10 #强制汇率(设置此参数后每笔交易将按照此汇率计算,例如:6.4) forced_usdt_rate=app_name=epusdt #下面配置你的域名,收银台会需要 app_uri=https://upay.dujiaoka.com #是否开启debug,默认false app_debug=false #http服务监听端口 http_listen=:8000 #静态资源文件目录 static_path=/static #缓存路径 runtime_root_path=/runtime #日志配置 log_save_path=/logs log_max_size=32 log_max_age=7 max_backups=3 # mysql配置 mysql_host=127.0.0.1 mysql_port=3306 mysql_user=mysql账号 mysql_passwd=mysql密码 mysql_database=数据库 mysql_table_prefix= mysql_max_idle_conns=10 mysql_max_open_conns=100 mysql_max_life_time=6 # redis配置 redis_host=127.0.0.1 redis_port=6379 redis_passwd= redis_db=5 redis_pool_size=5 redis_max_retries=3 redis_idle_timeout=1000 # 消息队列配置 queue_concurrency=10 queue_level_critical=6 queue_level_default=3 queue_level_low=1 #机器人Apitoken tg_bot_token= #telegram代理url(大陆地区服务器可使用一台国外服务器做反代tg的url),如果运行的本来就是境外服务器,则无需填写 tg_proxy= #管理员userid tg_manage= #api接口认证token(用于发起交易的签名认证,请勿外泄) api_auth_token= #订单过期时间(单位分钟) order_expiration_time=10 #强制汇率(设置此参数后每笔交易将按照此汇率计算,例如:6.4) forced_usdt_rate=
由于Epusdt会自动开启http服务并监听配置端口,所以可以直接用ip访问,例如: http://127.0.0.1:8000。
这会显得非常不美观,还没有https。
所以我们需要借助nginx的反向代理来为Epusdt绑定一个域名
点击宝塔->网站->点击刚刚新增网站的设置->反向代理设置
![图片[3]-开源免费的跨平台USDT收付款Epusdt搭建 - 毕方资源网-毕方资源网](https://cos.vs98k.cn/2023/09/20230925224056541.png)
linux服务器需要赋予Epust执行权限方可启动。
1.通过ssh进入服务器终端
2.进入epusdt可执行文件所在目录(目录位置可以参考宝塔面板的网站根目录)
3.执行命令chmod +x epusdt赋予权限(根据你的实际目录来,不用一比一抄我的,每个人的目录都不一样)
![图片[4]-开源免费的跨平台USDT收付款Epusdt搭建 - 毕方资源网-毕方资源网](https://cos.vs98k.cn/2023/09/20230925224149762.png)
为了保证Epusdt常驻后台运行,我们需要配置supervisor来实现进程监听
打开宝塔supervisor,添加守护进程
![图片[5]-开源免费的跨平台USDT收付款Epusdt搭建 - 毕方资源网-毕方资源网](https://cos.vs98k.cn/2023/09/20230925224236502-1024x690.png)
![图片[6]-开源免费的跨平台USDT收付款Epusdt搭建 - 毕方资源网-毕方资源网](https://cos.vs98k.cn/2023/09/20230925224331603-555x1024.png)
暂无评论内容