BTCPay Server vs Xcash: Which Self-Hosted Payment Gateway Fits Your Business?

Comparison BTCPay Self-Hosted

BTCPay Server has been the gold standard for self-hosted Bitcoin payments since 2017. But in 2026, payment demands go far beyond Bitcoin-only — stablecoins, multi-chain support, and smart contract payments are table stakes. Here's an honest comparison of BTCPay Server vs Xcash so you can pick the right one.

BTCPay Server: Eight Years of Bitcoin Excellence

Nicolas Dorier launched BTCPay Server in 2017 after Coinbase Commerce announced plans to charge 1% custody fees on Bitcoin payments. The community needed a truly decentralized alternative. BTCPay became the first self-hosted Bitcoin payment gateway that required no third party.

Eight years later, BTCPay is still the most mature self-hosted solution for Bitcoin-only payment processing. Its Lightning Network integration — covering LND, CLN, and LNURL — is best-in-class. Payjoin, hardware wallet signing, BIP-70 payment protocol, custom greenfield API — almost every feature a Bitcoin maximalist could ask for is there.

But the market shifted. Stablecoins now exceed $300 billion in market cap. Ethereum L2 daily active users have surpassed mainnet. Multi-chain payment support is no longer a nice-to-have — it's what customers expect. BTCPay's Bitcoin-only focus went from being its strength to its biggest limitation.

Why Xcash Exists

Xcash was built on a simple premise: self-hosted payments shouldn't be limited to one chain. If your customers hold USDT on TRC-20 instead of BTC, BTCPay can't help you. If your e-commerce site runs on Polygon, BTCPay is equally useless.

Xcash was designed from day one as a multi-chain payment gateway — Bitcoin + Ethereum + BSC + Polygon + Arbitrum + Optimism + 100+ EVM chains, with full USDT/USDC support on ERC-20, TRC-20, and BEP-20 networks. All coins share one API, one webhook system, and one admin dashboard.

Head-to-Head Comparison

Dimension BTCPay Server Xcash
First release20172025
Chains supportedBitcoin only100+ EVM chains + Bitcoin
Stablecoins\u274c No native support\u2705 USDT/USDC (ERC/TRC/BEP)
DeploymentDocker + manual scripts + full node syncSingle Docker Compose command
Setup time30-60 min initial + hours for node sync3 minutes
Platform feeZeroZero
HD wallet\u2705 Bitcoin HD only\u2705 Cross-chain HD
Invoicing\u2705 BIP-70, Greenfield\u2705 REST API + Webhook
AML/risk scoring\u274c None\u2705 MistTrack built-in
Deposit & withdrawal\u274c Receive only\u2705 Send + receive
BackendC# (.NET Core)Python (Django + DRF)
LNURL / Lightning\u2705 Mature, best-in-classIn development
Greenfield API\u2705\u2705 REST API
Docker ComposePartial (manual config needed)\u2705 One command
CommunityLarge (8 years)Growing

Setup Difficulty: Day and Night

BTCPay Server's official deployment script has improved over the years, but it's still notorious for its complexity:

# BTCPay — requires domain, SSL, manual env var configuration
curl -o btcpay.sh https://raw.githubusercontent.com/btcpayserver/btcpayserver-docker/master/btcpay.sh
# Edit env vars: BTCPAY_HOST, NBITCOIN_NETWORK, LETSENCRYPT_EMAIL
./btcpay.sh --version "1.12.3"
# First deploy + Bitcoin full node sync = hours to days

The real bottleneck: BTCPay depends on a full Bitcoin node. Docker Compose pulls Bitcoin Core — 600GB+ of blockchain data, 1-3 days of sync time on a typical VPS. You can use NBXplorer in lightweight mode, but for production environments, node sync is still a real first-time barrier.

Xcash deployment:

# Xcash — two commands, zero pre-configuration
git clone https://github.com/xca-sh/xcash.git
cd xcash && ./scripts/init_env.sh && docker compose up -d

Xcash doesn't require running a full node. It connects to blockchain via public nodes or your own RPC endpoints — no sync wait. If you already have Infura or Alchemy keys, plug them in. The default config works out of the box.

Feature Depth: Where Each Excels

BTCPay's Strengths

  • Lightning Network — BTCPay's LN integration is the best in the industry. Supports LND, CLN, and LNURL. If you need self-hosted Lightning payments with instant confirmation and near-zero fees, BTCPay is the only serious option
  • Payjoin — Native support for this Bitcoin privacy protocol that makes chain analysis harder
  • Hardware wallet signing — Sign transactions via USB or HSM without exposing private keys to the server
  • BIP-70 payment protocol — Required by some legacy POS systems and Bitcoin payment flows

Xcash's Strengths

  • 100+ chains, one dashboard — Manage Bitcoin, Ethereum, BSC, Polygon, Arbitrum, Optimism, Avalanche, Fantom, and more from a single admin panel
  • Stablecoin support — Full USDT (ERC-20/TRC-20/BEP-20) and USDC coverage. If your customers are in Asia, Latin America, or Africa, they probably hold USDT — not BTC
  • Cross-chain HD wallet — Each customer gets a unique deposit address per transaction. Same HD derivation logic across all chains. No address reuse, no confusion
  • Built-in AML (MistTrack) — Suspicious transactions flagged automatically. Helps merchants stay compliant without third-party services
  • Full send + receive — Xcash handles both incoming payments and withdrawals to any chain address. Most payment gateways (BTCPay included) only handle receiving

Who Should Choose BTCPay Server?

  • Merchants who only accept Bitcoin
  • Heavy Lightning Network users
  • Bitcoin privacy enthusiasts (Payjoin, BIP-70, hardware wallets)
  • Teams with ops bandwidth to configure and maintain infrastructure
  • People already running a Bitcoin node

Who Should Choose Xcash?

  • E-commerce sellers who need to accept multiple cryptocurrencies
  • Cross-border merchants whose customers primarily use USDT
  • SMBs that want one system for all on-chain payment collection
  • Developers who don't want to spend hours configuring infrastructure
  • Merchants migrating from hosted gateways (CoinGate, OpenNode) to self-hosted

Real-World Decision Guide

Scenario A: Bitcoin-only cafe

You run a coffee shop in Berlin that accepts Bitcoin. All customers pay in BTC, some via Lightning. You're technical and don't mind running a node.

Choose BTCPay Server. Its Lightning integration and hardware wallet support are irreplaceable for your use case.

Scenario B: Cross-border e-commerce seller

You sell electronics accessories on Shopify. Customers are in Southeast Asia and Latin America. Most pay with USDT TRC-20, occasional BTC and ETH orders.

Choose Xcash. BTCPay doesn't support USDT TRC-20 — meaning you'd lose most of your customers. Xcash deploys in 3 minutes and handles all chains from one dashboard.

Scenario C: SaaS with global users

Your SaaS product has 2,000 paid users across 50 countries. They pay with ETH, MATIC, USDC, and BTC.

Choose Xcash. Multi-chain HD wallet + unified API + webhook integration means one codebase handles all currencies. BTCPay only processes the BTC portion — you'd need a separate solution for everything else.

Scenario D: Migrating from CoinGate

You've been using CoinGate, processing $20K/month. Want to move to self-hosted and save the 1% fee.

Choose Xcash. Fast deploy, REST API + webhook + dashboard workflow similar to CoinGate. Lowest migration cost. BTCPay migration would require rewriting your entire payment integration.

Community and Ecosystem

BTCPay's community is among the strongest in open-source crypto — Mattermost chat, active GitHub discussions, dedicated contributors, and mature plugins for WooCommerce, Shopify, and Magento. If your use case is "Bitcoin + WooCommerce," BTCPay's plugin is the most battle-tested option.

Xcash's community is younger but growing. The GitHub repo includes REST API docs, a Python SDK, and webhook examples. For SMBs that need multi-chain payment support out of the box, Xcash already covers ground that BTCPay's plugin ecosystem can't reach — because BTCPay plugins only extend Bitcoin functionality, while Xcash natively supports every EVM chain.

Bottom Line

BTCPay Server remains the gold standard for Bitcoin self-hosted payments. If you're a Bitcoin-only business that needs Lightning, privacy, and hardware wallet integration — BTCPay is still your best bet.

But if you need multi-chain support, stablecoin payments, and fast deployment — which in 2026 are business necessities, not luxuries — Xcash is the stronger BTCPay Server alternative. It fills BTCPay's biggest gap: multi-chain support. While keeping what matters: zero platform fees, full private key control, and no KYC.

Deploy Xcash in 3 minutes:

git clone https://github.com/xca-sh/xcash.git
cd xcash && ./scripts/init_env.sh && docker compose up -d

Or check out the project at xca.sh.

FAQ

Does BTCPay Server support stablecoins?

Not natively. BTCPay is designed for Bitcoin. It doesn't support USDT, USDC, or other ERC-20 tokens. Community plugins attempt to add stablecoin support, but their reliability and security aren't guaranteed. If you need stablecoin payments, Xcash is the better self-hosted choice.

Does Xcash support Lightning Network?

Lightning Network support is on Xcash's roadmap and currently in development. If you need Bitcoin Lightning payments today, BTCPay Server is the go-to solution.

Can I run BTCPay Server and Xcash together?

Yes. They're not mutually exclusive. Many merchants run both — BTCPay for Bitcoin and Lightning payments, Xcash for EVM chains and stablecoins. Route payments to the appropriate gateway based on the customer's selected currency.

Which is easier to deploy?

Xcash — two commands, no full node required, no domain/SSL pre-configuration needed (just put it behind a reverse proxy). BTCPay's deployment is more involved: Bitcoin node sync, manual environment variables, domain and SSL binding. If your goal is to start accepting payments as fast as possible, Xcash has a significantly lower barrier to entry.


Related Posts