If you want to accept crypto without a payment processor in the middle, the two tools you will most often see recommended are BTCPay Server and Payfim. They share the same core idea - you run the software, payments land in your wallet, nobody takes a cut - but they are built for different people. This page lays out the differences as of September 2026 so you can pick the one that fits your store, not the one with the louder marketing.
Payfim vs BTCPay Server at a glance
| BTCPay Server | Payfim | |
|---|---|---|
| Software cost | Free | One-time license per module per domain ($10-$29), or $99 All-Access Bundle; see pricing |
| Transaction fees | None (network fee only) | None (network fee only) |
| License | Open source (MIT) | Commercial license; code ships as readable PHP |
| Custody | Non-custodial | Non-custodial - only public addresses (Monero: view key) |
| KYC | None | None |
| Hosting | Docker on a VPS, dedicated server or node hardware, or a third-party host | PHP 7.4-8.4 + MySQL/MariaDB; runs on shared cPanel hosting |
| How payments are verified | Your own Bitcoin node (and Lightning node if enabled) | Public blockchain APIs (for example mempool.space, Etherscan, TronGrid) or your own Monero wallet RPC |
| Lightning Network | Yes (LND, Core Lightning, Eclair, or an external node) | No |
| Stablecoins | USDT on TRON via a community plugin | USDT (TRC20 and ERC20) and USDC built in |
| Fiat auto-conversion | Not built in; exchange plugins can swap altcoins to BTC | No - you receive the coin the customer sent |
| Platform integrations | Long list including WooCommerce, Shopify, WHMCS, Magento, PrestaShop, OpenCart and more | 19 platform modules plus a PHP/Laravel SDK |
How are BTCPay Server and Payfim similar?
Both put you in control. With either one, the customer pays to an address derived from or belonging to your wallet, the software watches the blockchain, and your store is told when the invoice is paid. There is no processor account to open, no balance sitting with a third party and no percentage taken from each sale. Customers pay only the normal network fee for the coin they use.
That makes the choice between them different from a choice between a self-hosted tool and a hosted processor. If you are still deciding whether self-hosting is right for you at all, start with our guide to self-hosted vs hosted crypto gateways.
What does each one cost to run?
BTCPay Server itself costs nothing. The real cost is the server. BTCPay Server is distributed as Docker containers, and its documentation lists a minimum of 2 GB of RAM and 80 GB of storage with pruning enabled to run Bitcoin and Lightning nodes. Its deployment guide estimates a VPS at roughly $10-70 a month depending on the provider, and notes that OpenVZ virtual servers are not supported. You can also use a third-party BTCPay host if you do not want to run a node yourself.
Payfim costs a one-time license per platform module (for example $20 for WooCommerce or $15 for WHMCS), with 12 months of updates included and an optional $9 per year to keep receiving updates after that. The gateway is a PHP application, so it usually runs on the hosting account you already pay for. There is no node to sync and no container to maintain.
For a small store on shared hosting, Payfim is usually cheaper over the first year or two. For a merchant who already runs a VPS, BTCPay Server can cost nothing extra at all.
Which one is more trust-minimized?
BTCPay Server, for Bitcoin. It verifies payments with your own full (or pruned) Bitcoin node, so you do not rely on anybody else's view of the blockchain. That is a real advantage and a big part of why Bitcoin-focused merchants choose it.
Payfim checks payments through public blockchain data services - for example mempool.space for Bitcoin, Etherscan for Ethereum-based tokens and TronGrid for TRON. This is what lets it run on shared hosting and support 16 coin options without 16 nodes. Your funds are still never held by anyone else, and Payfim never sees a private key or seed phrase, but you are trusting those data sources to report the chain correctly. For Monero, you can point Payfim at your own wallet RPC. Payfim also checks its license with payfim.com using a signed response; there is a 72-hour grace period, and an outage at payfim.com never blocks your checkout. BTCPay Server has no license check at all. Details are on our security page.
Lightning, stablecoins and altcoins
Lightning is BTCPay Server's clear strength. You can run LND or Core Lightning on the same instance, use Eclair, or connect an external node. If your customers want instant, low-cost Bitcoin payments for small amounts, BTCPay Server can do that and Payfim cannot.
Stablecoins and other chains are where Payfim is broader out of the box. BTCPay Server's own FAQ says Bitcoin is the project's only focus, that altcoins are maintained by their communities, and that the core developers do not add coins on request. Some coins are supported natively (for example Litecoin and Dogecoin), while Monero and USDT on TRON are available through plugins. Payfim ships BTC, ETH, USDT on TRON and Ethereum, USDC, XRP, BNB, SOL, TRX, DOGE, BCH, ADA, HYPE, LTC, LINK and XMR as first-party options with per-coin confirmation settings. See the full list on supported coins.
When BTCPay Server is the better choice
- You want free, open-source software that you can fork, audit and run forever without a license.
- You mainly accept Bitcoin and want to verify payments with your own node.
- You need Lightning for fast, cheap small payments.
- You already run a VPS or home server and are comfortable with Docker, updates and backups.
- You use a platform Payfim does not cover, such as Shopify, Wix or BigCommerce, which appear in BTCPay Server's integration list.
- You want advanced Bitcoin features such as a built-in point of sale, crowdfunding pages or payouts.
When Payfim is the better choice
- Your customers pay in stablecoins. USDT on TRON and Ethereum and USDC on Ethereum are built in, shown as clearly separate networks.
- You are on shared hosting and do not want to run a VPS, Docker or a blockchain node.
- You want many coins without extra plugins, including Solana, XRP (with a destination tag per invoice), Cardano and Monero.
- You run a billing platform such as WHMCS, Blesta, FOSSBilling, HostBill, ClientExec or Paymenter and want a module built for its invoice model. See WHMCS or Blesta.
- You want a paid product with support and a one-time price rather than community help.
Can you use both?
Yes. Some merchants run BTCPay Server for Bitcoin and Lightning and add Payfim for stablecoins and other chains. Most store platforms let you enable two payment methods side by side, so customers see "Pay with Bitcoin" and "Pay with Crypto" as separate options. Just make sure the labels make the difference obvious.
Migrating from BTCPay Server to Payfim (or adding it alongside)
- Keep BTCPay Server running until every open invoice has expired or been paid. Late payments to old invoices still need to be seen.
- Install the Payfim gateway on your hosting, for example at
pay.yourstore.com, using the installation guide. - Add receiving addresses. You can use a fresh receiving address from the same wallet you used with BTCPay Server, or a separate wallet if you want Payfim revenue kept apart.
- Install the Payfim module for your platform and place a small test order.
- Switch the payment method at checkout, then disable the BTCPay plugin once old invoices are settled.
Nothing needs to be moved between the two, because neither holds your money.
Sources
Third-party facts were checked on the date shown above. Prices and features of other services change - always confirm on their official pages.

