首页
/ BTCPay Server:零成本搭建自托管比特币支付系统

BTCPay Server:零成本搭建自托管比特币支付系统

2026-04-23 11:12:26作者:邬祺芯Juliet

功能概述:认识BTCPay Server

BTCPay Server是一个开源的比特币支付处理系统,您可以完全自主托管,无需支付任何交易手续费。作为技术入门者,您可以利用它构建属于自己的加密货币支付解决方案,支持比特币及多种 altcoin 交易,适合电商网站、实体店收款等多种场景。

核心模块解析:系统架构与目录功能

[核心目录]:文件结构与功能定位

BTCPay Server的项目结构清晰,主要分为应用代码、配置文件和资源文件三大类。以下是关键目录的功能说明:

目录路径 功能描述 重要文件示例
BTCPayServer/ 主应用程序目录,包含核心业务逻辑 Program.cs(程序入口)、Startup.cs(服务配置)
BTCPayServer/Controllers/ 处理HTTP请求的控制器 UIInvoiceController.cs(发票管理)、UIStoresController.cs(商店配置)
BTCPayServer/wwwroot/ 静态资源文件 img/(图片资源)、js/(前端脚本)、css/(样式表)
BTCPayServer/Data/ 数据访问层 数据库模型和迁移脚本
docs/ 项目文档 安装指南和API说明

[配置系统]:环境与参数设置方法

BTCPay Server通过多种方式管理配置,确保系统在不同环境下的灵活部署:

  1. 配置文件定位方法

    • 主配置文件:appsettings.json(基础配置)
    • 环境特定配置:appsettings.Development.json(开发环境)和appsettings.Production.json(生产环境)
    • 敏感信息建议通过环境变量设置,避免直接写在配置文件中
  2. 关键配置项说明

    配置项 作用 示例值
    ConnectionStrings 数据库连接字符串 "DefaultConnection": "Server=localhost;Database=BTCPay"
    LightningNetwork 闪电网络设置 "Clightning": { "Host": "127.0.0.1", "Port": 9735 }
    ExternalServices 外部服务配置 汇率服务、邮件服务等

⚠️ 注意:修改配置文件前请先备份,特别是生产环境的配置变更需要谨慎操作。

操作指南:从零开始部署与使用

[安装部署]:本地开发环境搭建步骤

  1. 获取项目源码 首先克隆项目仓库到本地:

    git clone https://gitcode.com/GitHub_Trending/bt/btcpayserver
    cd btcpayserver
    
  2. 构建与运行 BTCPay Server基于.NET Core开发,您需要先安装.NET SDK。然后执行以下命令:

    dotnet build BTCPayServer.sln
    dotnet run --project BTCPayServer/BTCPayServer.csproj
    

    服务启动后,访问 https://localhost:49392 即可打开管理界面。

[实际应用]:创建支付订单实操示例

  1. 配置商店

    • 登录管理界面后,点击"创建新商店"
    • 设置商店名称、支持的加密货币(如比特币)
    • 配置支付接收地址(关联您的钱包)
  2. 生成支付链接 在商店管理页面,选择"创建发票",填写订单信息:

    • 金额:0.001 BTC
    • 商品描述:"有机红茶"
    • 点击"生成发票",系统会创建唯一支付链接和二维码

POS系统示例 图:BTCPay Server POS系统示例,可用于实体店商品结算

  1. 测试支付流程
    • 复制支付链接发送给客户,或扫描生成的二维码
    • 客户完成支付后,系统会自动确认并更新订单状态
    • 在"订单管理"页面查看交易记录和状态

🔧 提示:对于开发测试,您可以使用比特币测试网(Testnet)进行交易,避免使用真实货币。

通过以上步骤,您已经掌握了BTCPay Server的基本部署和使用方法。该系统的强大之处在于完全开源和自托管,让您可以掌控所有交易数据,无需依赖第三方支付处理商。随着使用深入,您还可以探索其高级功能,如闪电网络支付、订阅服务、多商店管理等。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
471
465
kernelkernel
deepin linux kernel
C
32
16
atomcodeatomcode
Claude 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 Started
Rust
2.09 K
218
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
700
1.4 K
docsdocs
暂无描述
Dockerfile
780
5.08 K
pytorchpytorch
Ascend Extension for PyTorch
Python
758
968
flutter_flutterflutter_flutter
本仓库是 Flutter SDK 与 Flutter Engine 的 OpenHarmony 适配版本,由 CPF-Flutter 团队维护。开发者可使用熟悉的 Flutter 技术栈开发 OpenHarmony 应用,3.35.7 及以后的适配版本可基于本仓库源码构建支持 OpenHarmony 的 Flutter Engine。
Dart
1.04 K
271
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
880
2.03 K
mindquantummindquantum
MindQuantum is a general software library supporting the development of applications for quantum computation.
Python
183
111
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
1.11 K
682