Accept Bitcoin for SaaS
Plans, subscriptions, deposit addresses and webhooks — everything you need to sell a subscription to your service for USDT, USDC or ETH.
How well Bitcoin fits SaaS
As an extra option · Fit 25%Enable it for customers who hold this coin, but pick another one as the main method.
Pros
- Good for large amounts: deep liquidity and counterparties trust it.
Keep in mind
- The coin’s price moves: set the price in USD and the amount is converted at the rate fixed when the invoice is created.
- The network fee is noticeable: for small orders add a cheaper network to the checkout, such as BEP-20, TON or Solana.
- Network
- Bitcoin
- Coin
- BTC
- Addresses
- a separate one for each payment
- Rate
- locked for the payment window
Plans and subscriptions
Create a plan via the API — Moonvex issues invoices on schedule and sends you events.
Balance top-ups
A permanent deposit address per customer: every incoming transfer is a separate payment and webhook.
Invoice in fiat
A USD price is converted to BTC at the rate locked when the invoice is created.
For a “top up your balance” model, deposit addresses are the right fit: each customer has their own permanent address, and you get a deposit.confirmed event for every top-up.
Bitcoin transfers take longer to confirm than stablecoins, so for digital goods it helps to show the customer the payment status in real time. The Moonvex payment page updates on its own — the customer doesn’t need to reload it.
Recommended coin set for SaaS
To cover most customers, enable on the checkout page: USDT TRC-20, USDT BEP-20, USDT on TON. The customer picks the network, and every payment lands on one project balance.
One request to create a payment
The response contains the address, the exact amount and a link to a ready-made payment page. Status updates arrive via HMAC-signed webhooks.
curl https://api.moonvex.org/v1/payments \ -H "Authorization: Bearer $MOONVEX_SECRET_KEY" \ -H "Idempotency-Key: $(uuidgen)" \ -d '{"orderId":"sub-acme-pro-2026-12","amount":"29","currency":"USD","asset":"BTC","network":"BITCOIN"}'
FAQ
Which currency should the price be in when customers pay in Bitcoin?
Set the price in USD with Bitcoin as the payment coin: Moonvex converts the amount and fixes the rate when the invoice is created.
Can I charge customers automatically, like with a card?
No: with crypto, the customer sends each payment themselves. Moonvex issues invoices automatically and reminds you about them with events.
Do you accept Lightning?
For now, only the Bitcoin main network.
How do I test the integration before launch?
The “Send test” button delivers a test webhook, and a real payment for a small amount checks the whole flow. There is no separate test network.
Can I send a BTC invoice without a website?
Yes, from the dashboard or the Telegram bot — the customer gets a link to the payment page.
Other coins for SaaS
Bitcoin for other use cases
Compare Bitcoin with others
Start accepting payments today
An account and your first project in a minute, no monthly fee.