BTPay
- Name: BTPay
- URL: https://btpay.org/
- Category: self-hosted merchant-payments control plane / Bitcoin-and-stablecoin checkout stack / lightweight BTCPay alternative
- Tags: bitcoin-ecosystem ethereum-ecosystem solana-ecosystem
- Summary: BTPay is a small self-hosted merchant stack: lightweight BTCPay-style checkout, invoices, storefronts, multichain stablecoin monitoring, and privacy knobs. Useful operator packaging, but still a lighter merchant appliance rather than a reference stack.
- What it does:
- Lets merchants accept onchain Bitcoin through xpubs, output descriptors, or imported static address lists with BIP32-derived fresh addresses
- Supports integrations with a self-hosted BTCPay Server and LNbits for Lightning-denominated payment flows and tracking
- Monitors stablecoin payments for USDC, USDT, DAI, and PYUSD across Ethereum, Arbitrum, Base, Polygon, Optimism, Avalanche, Tron, and Solana
- Exposes invoices, invoice search/export, payment links, receipts, storefronts, donation pages, carts, and post-payment inventory handling
- Ships a REST API with Bearer-token auth plus HMAC-signed webhooks and retry behavior for merchant integrations
- Uses Electrum plus mempool-style monitoring, optional SOCKS5/Tor routing, and configurable mempool endpoints to preserve privacy and payment-verification control
- Runs with JSON-file persistence rather than a database and documents deployment on Linux, FreeBSD, and common PaaS targets
- Key claims:
- The official site and README describe BTPay as a “Self-hosted Bitcoin payment processor” with “No third parties. No monthly fees. Full control of your keys,” which strongly frames it as sovereign merchant infrastructure rather than a hosted processor
- The same materials call it a “lightweight, privacy-focused alternative to BTCPay Server,” which is important because the product is narrower and architecturally simpler than BTCPay Server rather than a drop-in clone
- The README says BTPay supports onchain Bitcoin, BTCPay Server, LNbits, stablecoins, and wire transfer in one invoicing and storefront stack, which makes it broader than a Bitcoin-only donation page tool
- The API docs expose invoice lifecycle, payment links, exchange-rate endpoints, and signed webhooks with explicit retry policy, showing a reusable merchant integration surface rather than a UI-only app
- The configuration docs emphasize SOCKS5/Tor routing, custom mempool instances, public/private Electrum selection, and no telemetry, reinforcing the privacy-first operator posture
- The deployment docs explicitly require a single Gunicorn worker because of the in-memory data store, which is a meaningful architectural constraint and helps explain why the project is positioned as lightweight self-hosted software rather than horizontally scaled payment SaaS
- The same deployment docs describe built-in self-update, backups, rollback paths, and systemd hardening, which makes BTPay feel more like a compact payments appliance than a bare demo repo
- Whitepaper: No canonical standalone BTPay whitepaper or litepaper surfaced in this pass. The clearest current source of truth was the official site, repository README, and first-party API / configuration / deployment docs; see
../whitepapers/btpay-primary-sources-2026-05-03.md. - Sources:
- https://btpay.org/
- https://github.com/btpay-org/btpay
- https://raw.githubusercontent.com/btpay-org/btpay/master/README.md
- https://raw.githubusercontent.com/btpay-org/btpay/master/docs/API.md
- https://raw.githubusercontent.com/btpay-org/btpay/master/docs/CONFIGURATION.md
- https://raw.githubusercontent.com/btpay-org/btpay/master/docs/DEPLOYMENT.md
Internal linkages
- Best upward reads: btcpay-server and bitcart.
Control surface
-
Practical authority sits in xpub or descriptor import, invoice and storefront defaults, webhook policy, stablecoin chain coverage, and the privacy and deployment choices the operator keeps enabled.
-
Read BTPay as a compact self-hosted checkout appliance, not as a broad merchant-payments baseline.
-
Last reviewed: 2026-06-04 UTC