BTCPay Server 全方位使用指南:从入门到精通
BTCPay Server 是一款免费开源的自托管比特币支付处理器,让个人与企业能够直接接收比特币支付,无需第三方中介。它将金融控制权交还给用户,同时提供安全、透明且可定制的支付解决方案。
一、核心功能解析:打造你的比特币支付系统
BTCPay Server 不仅仅是一个支付处理器,而是一套完整的比特币支付生态系统。通过模块化设计,它提供了从基础交易处理到高级商业管理的全方位功能。
1.1 多场景支付解决方案
BTCPay Server 支持多种支付场景,满足不同业务需求:
- 标准发票:为商品或服务创建专业发票,支持自定义品牌和支付期限
- 捐赠按钮:轻松集成到网站,接受加密货币捐赠
- Point of Sale (PoS):适用于实体店的销售终端,支持快速扫码支付
「相关模块:[BTCPayServer/Controllers/UIInvoiceController.cs]」
1.2 安全与隐私保障
作为自托管解决方案,BTCPay Server 将安全与隐私置于首位:
- 无需第三方:资金直接进入你的钱包,不经过任何中间环节
- 自托管控制:完全掌控服务器和数据,降低数据泄露风险
- 多重签名支持:增强账户安全性,防止单点故障
命令用途:生成安全的服务器配置
dotnet run --server.urls=https://0.0.0.0:443 --useHttps --ssl-certificate-path=/path/to/cert.pfx --ssl-certificate-password=your_secure_password
1.3 丰富的扩展生态
通过插件系统,BTCPay Server 可以扩展出更多功能:
- 订阅服务:支持定期自动 billing
- ** crowdfunding :创建众筹项目,接受比特币支持 - 多币种支持 **:不仅支持比特币,还可通过插件添加其他加密货币
BTCPay Server 品牌形象展示,体现其开放、安全的核心价值
二、环境准备指南:从零开始搭建支付系统
在开始使用 BTCPay Server 前,需要准备合适的运行环境。本部分将指导你完成从环境检查到基础安装的全过程。
2.1 系统要求与依赖
BTCPay Server 对运行环境有一定要求,确保你的系统满足以下条件:
-** 操作系统 :Linux (推荐 Ubuntu 20.04+)、Windows 10/Server 2019 或 macOS 10.15+ - 硬件 :至少 2GB RAM,20GB 存储空间(随区块链数据增长需更多) - 依赖软件 **:.NET 6.0 SDK、Git、Docker(可选,用于容器化部署)
** 注意事项 **:生产环境建议使用 Linux 系统,提供更好的稳定性和安全性。
2.2 获取项目源码
第一步:克隆 BTCPay Server 仓库到本地
命令用途:克隆项目代码库
git clone https://gitcode.com/GitHub_Trending/bt/btcpayserver
第二步:进入项目目录
cd btcpayserver
2.3 基础环境配置
根据你的操作系统,执行相应的环境配置命令:
Linux 系统:
命令用途:安装 .NET SDK
sudo apt-get update && sudo apt-get install -y dotnet-sdk-6.0
Windows 系统: 从 微软官方网站 下载并安装 .NET 6.0 SDK
三、操作流程详解:从安装到接收第一笔支付
完成环境准备后,让我们通过实际操作,快速启动并配置 BTCPay Server,接收你的第一笔比特币支付。
3.1 项目构建与启动
第一步:构建项目
命令用途:构建 BTCPay Server 项目
dotnet build BTCPayServer/BTCPayServer.csproj
第二步:启动应用程序
命令用途:运行 BTCPay Server
dotnet run --project BTCPayServer/BTCPayServer.csproj
3.2 初始配置向导
首次启动后,系统会引导你完成初始配置:
- 创建管理员账户:设置用户名和强密码
- 配置服务器设置:设置域名、端口和 SSL 证书
- 连接比特币节点:配置本地或远程比特币节点信息
- 创建钱包:生成或导入比特币钱包
「相关模块:[BTCPayServer/Controllers/UIManageController.cs]」
3.3 创建第一个支付请求
完成初始配置后,创建你的第一个支付请求:
- 登录管理界面,点击"创建新发票"
- 填写金额、描述和客户信息
- 生成发票并获取支付二维码
- 使用比特币钱包扫描二维码完成支付
- 在管理界面查看支付状态
BTCPay Server 启动界面,简洁的设计风格体现其易用性
四、进阶配置技巧:打造个性化支付系统
掌握基础操作后,通过进阶配置可以充分发挥 BTCPay Server 的潜力,满足特定业务需求。
4.1 自定义品牌与界面
BTCPay Server 允许你完全自定义支付页面的外观,打造符合品牌形象的支付体验:
- 上传品牌标识:在商店设置中上传公司 logo
- 自定义颜色方案:调整按钮、背景和文本颜色
- 修改页面文本:定制支付流程中的提示信息
「相关模块:[BTCPayServer/Models/StoreBrandingViewModel.cs]」
4.2 集成到现有系统
将 BTCPay Server 无缝集成到你的网站或应用:
-
API 集成:使用 REST API 自动创建发票
命令用途:通过 API 创建发票 curl -X POST https://your-btcpay-server.com/api/v1/stores/{storeId}/invoices \ -H "Content-Type: application/json" \ -H "Authorization: token your_api_token" \ -d '{"amount": 0.001, "currency": "BTC", "description": "Test Invoice"}' -
插件集成:使用现成的 WooCommerce、Shopify 等插件
-
自定义集成:通过 Webhook 接收支付状态更新
4.3 高级安全配置
为生产环境增强安全性:
- 设置防火墙:只开放必要端口(80/443)
- 配置备份策略:定期备份数据库和钱包文件
- 启用双因素认证:为管理员账户添加额外保护
- 设置访问控制:通过角色管理团队成员权限
五、常见问题速查
Q1: 如何迁移现有的 BTCPay Server 数据到新服务器?
A1: 首先在原服务器导出数据:dotnet run -- project BTCPayServer/BTCPayServer.csproj -- export-data,然后在新服务器执行:dotnet run -- project BTCPayServer/BTCPayServer.csproj -- import-data,确保两台服务器使用相同版本的 BTCPay Server。
Q2: BTCPay Server 支持哪些加密货币?
A2: 默认支持比特币,通过安装插件可以支持 Litecoin、Bitcoin Cash、Ethereum 等多种加密货币。完整列表可在官方插件库中查看。
Q3: 如何处理支付确认延迟的问题?
A3: 首先检查比特币网络拥堵情况,可在管理界面调整确认要求(默认为 1 个确认)。对于高价值交易,建议增加确认数;对于小额交易,可减少确认数以加快处理速度。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0152- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0112