如何搭建BTCPay Server实例?MERN应用集成BTCPay API遇阻
搭建BTCPay Server实例的含义与操作指南
核心意义说明
BTCPay Server是开源的比特币支付处理系统,你的MERN应用要通过它的API实现支付功能,必须先对接一个专属的BTCPay Server实例——简单说就是你得拥有一个可调用的BTCPay服务节点,分为自行搭建服务器部署、使用第三方托管服务两种方式。
具体操作方法
一、托管方案(如btcpay.app)
适合不想折腾服务器的开发者,步骤极简:
- 注册并登录托管平台,完成基础验证(部分平台需邮箱或身份校验)
- 在后台找到「创建商店」入口,填写商店名称、选定支持的加密货币(默认选比特币即可)
- 进入商店的「API设置」页面,点击「生成新密钥」,给密钥分配必要权限(比如发票创建、支付状态查询),妥善保存该密钥——后续MERN后端调用API必须用到它
二、自行在服务器安装BTCPay Server
适合需要完全掌控服务的开发者,步骤如下:
- 准备服务器:租用一台VPS(如阿里云、DigitalOcean实例),要求:Ubuntu 20.04+系统、2核4G以上内存、公网IP、已完成解析的域名
- 安装Docker与Docker Compose:登录服务器后执行命令:
apt update && apt upgrade -y apt install docker.io docker-compose -y - 运行官方安装脚本:执行一键安装命令,跟随提示完成配置:
过程中需输入你的域名、选择支持的加密货币(默认包含比特币),脚本会自动完成容器部署、SSL证书配置curl -s https://raw.githubusercontent.com/btcpayserver/btcpayserver-docker/master/install.sh | bash - 初始化服务:在浏览器访问你的域名,创建管理员账号,绑定个人比特币钱包(硬件钱包或软件钱包均可)
- 获取API密钥:同托管方案,在后台创建商店后,进入API设置页面生成密钥
MERN集成小提示
拿到API密钥后,在Node.js后端中使用axios或fetch调用BTCPay的API接口(比如创建发票的POST /api/v1/stores/{storeId}/invoices),注意将API密钥和商店ID存入环境变量(.env文件),禁止硬编码到代码中。
内容的提问来源于stack exchange,提问作者Jack Hillyer
相关产品推荐
相关产品推荐

