Running a Bitcoin payment processor used to mean trusting a third party with your funds, sharing customer data, and paying steep transaction fees. BTCPay Server changes that equation entirely. It is self-hosted open-source software that lets anyone accept Bitcoin and Lightning payments directly into wallets they control, with zero processing fees from the platform itself. Whether you run an online store, collect donations, or bill clients as a freelancer, the setup gives you full sovereignty over how payments are processed and settled. For merchants evaluating options, exploring docs btcpayserver alongside alternatives like docs btcpayserver helps clarify which solution fits a given business model.
What BTCPay Server Actually Is
BTCPay Server creates invoices, presents a checkout page to customers, and records payments sent directly to merchant-controlled wallets. It does not hold funds as an intermediary. Every payment lands in a wallet whose private keys the operator manages. The software connects to a full Bitcoin node on the backend, which means address generation avoids reuse and customer information never leaks to a third-party payment gateway.
The architecture splits into three main concepts for users. An account serves as identity on a single instance. A store bundles payment methods, checkout settings, exchange rates, and integrations for a specific business or project. A wallet supplies receiving addresses and tracks transactions for that store. Each store configures its own supported payment methods independently.
Core Features
The platform covers both on-chain and Lightning Network payments out of the box. Beyond basic invoice creation, it includes tools for recurring billing, partial payments, refunds, and payouts. Here is what stands out for most operators.
Invoices and Payment Requests
Invoices fix an amount and exchange rate for a limited window and track whether payment arrived. They move through Processing while waiting for the confirmation policy set by the store, then become Settled once required blocks confirm. Lightning invoices settle instantly without on-chain confirmations.
Payment requests differ from one-off invoices. They are shareable, long-lived links that generate a new invoice each time someone pays them. Customers can make partial payments until the total amount is reached or the request expires. Freelancers use them for bill pay workflows, and charities embed them on donation pages because they handle exchange rate updates automatically.
Point of Sale and Crowdfunding
The built-in web-based Point of Sale app works on any internet-connected device. Physical retailers display invoices to customers who scan QR codes or copy-paste addresses at checkout. The Crowdfunding app groups multiple donation contributions under a single campaign page, preventing the address reuse problem that plagues static donation addresses. Address reuse compromises donor privacy, increases attack surface, and inflates fees when moving accumulated funds later.
Recurring Payments and Subscriptions
Offerings represent products or services sold through recurring payment flows. An offering groups subscription plans, entitlements, and subscribers together. Store owners define pricing tiers and manage subscriber lifecycles without relying on external subscription processors. This matters for content creators and SaaS operators who want to keep Bitcoin revenue streams independent of traditional billing platforms.
Greenfield API
Developers access the Greenfield API to build custom integrations. It exposes endpoints for creating invoices, managing stores, querying balances, and handling payouts. API keys carry granular permissions so applications receive only the access they need. Webhooks let external systems react to invoice events, though implementations should validate events and handle retries safely.
Who Uses BTCPay Server
The flexibility attracts different user groups because the software removes geographic, political, and financial barriers to accepting cryptocurrency.
| User Type | Primary Use Case | Key Benefit |
|---|---|---|
| Online merchants | E-commerce plugin integration (WooCommerce, Shopify, Magento) | Zero fees, direct wallet settlement |
| Physical retailers | Web-based Point of Sale on tablets or terminals | No hardware payment terminal required |
| Freelancers | Shareable payment requests for invoicing | Partial payments, auto exchange rate updates |
| Charities | Crowdfunding and donation collection | Prevents address reuse, enhances donor privacy |
| Developers | Building plugins and custom integrations via API | Full open-source stack, extensible architecture |
| Community hosts | Running instances for local networks | Enables hyperbitcoinization at community level |
Self-sovereign individuals also deploy BTCPay Server to manage everyday Bitcoin transactions without exposing private keys to third-party servers. Hardware wallet integration pairs with a full node for maximum privacy.
Wallet Setup Options
Each store needs a wallet before it can receive on-chain payments. BTCPay Server offers three approaches, each with distinct security trade-offs.
Connect an existing wallet to import public wallet data from supported hardware or software wallets. Private keys stay off the server, making this the standard choice when an existing wallet should receive funds. Create a new watch-only wallet to generate receiving data while erasing the private key from the server entirely. Spending requires an external signer or recovery seed. Create a new hot wallet to keep the private key on the server and spend directly from the interface. This is convenient but exposes funds if either the account or server is compromised.
Server administrators can disable wallet generation for non-administrators, so availability depends on the instance configuration. Operators should record every recovery seed offline, test recovery procedures before accepting significant value, and keep only amounts appropriate for a hot wallet’s security level. Lightning operates as a separate payment method with different liquidity and backup requirements.
Integrations and Ecosystem
BTCPay Server supports plugins for major e-commerce platforms, reducing the friction of connecting Bitcoin payments to existing storefronts.
| Platform | Integration Type | Notes |
|---|---|---|
| WooCommerce | Plugin | Direct checkout, automatic order status updates |
| Shopify | Plugin V2 | Embedded payment option within Shopify flow |
| PrestaShop | Plugin | Standard module installation |
| Magento | Plugin | Compatible with community and enterprise editions |
| Drupal | Plugin | Content management system integration |
| Zapier | Automation | Trigger workflows based on invoice events |
| Odoo | Plugin | Accounting and inventory workflow sync |
Custom integrations work through the Greenfield API or webhook subscriptions. Services like cal.com, Invoice Ninja, GiveWP, and OpenCart also have documented integration paths. The plugin ecosystem evolves continuously, and the documentation maintains a running list of available connectors.
Deployment Basics
Operators deploy BTCPay Server using Docker Compose, which bundles the application, Bitcoin node, NBXplorer, and Lightning implementation into coordinated containers. One-click deployment scripts exist for cloud providers, and hosting companies offer managed instances for merchants who prefer not to maintain infrastructure. The operator guide covers database backups, network configuration, SSL setup, and update procedures separately from the user-facing documentation.
Server operators handle instance maintenance while users manage stores, invoices, wallets, and integrations. Clear separation between these roles keeps production environments stable and reduces the risk of misconfiguration.
