−25%

su Windows con pagamento annuale, fino al 31/10. Vai ai piani

EQVPS
Inizia

VPS per BTCPay Server: incassa crypto in casa

BTCPay Server con il suo nodo Bitcoin potato: i pagamenti arrivano dritti al tuo wallet, senza intermediari. Installazione testata e conti del disco per 35 GB.

Ogni processore di pagamento che sta in mezzo porta con sé le sue condizioni, il suo KYC e il suo pulsante per congelarti il saldo. BTCPay Server toglie di mezzo il mezzo. Le fatture nascono sul tuo server, il cliente paga a un indirizzo derivato dal tuo wallet e il tuo nodo Bitcoin conferma il pagamento. Nessuno tranne te può spegnerlo.

È pensato per negozi, freelance e servizi che già accettano bitcoin — o vogliono farlo — e preferiscono non affidare questo lavoro a un'azienda.

Quale piano

BTCPay gira come circa sette container: l'app BTCPay, NBXplorer (che osserva la catena), Bitcoin Core, Postgres e un nginx davanti con Let's Encrypt automatico. Sul nostro server di prova usavano circa 0,7 GB di RAM all'avvio, e Bitcoin Core ne prende di più durante la sincronizzazione; 4 GB bastano e avanzano. Il vero limite è il disco, non la memoria.

ConfigurazionePiano
BTC on-chain, nodo potato con ~5 GB di blocchiSmall-IP: 4 vCPU, 4 GB, 35 GB ($16/mese)
Lo stesso, con più margine per log e aggiornamentiMedium-IP: 6 vCPU, 6 GB, 45 GB ($20/mese)
Lightning, una finestra di blocchi più ampia o una seconda monetaPro-32: 8 vCPU, 32 GB, 400 GB ($40/mese), su richiesta

Ti serve un piano con un IPv4 tutto suo: i clienti raggiungono BTCPay via HTTPS e Let's Encrypt deve arrivare alla porta 80. Scegli Germania o Finlandia, quella disponibile al momento dell'ordine: per una pagina di pagamento la latenza conta poco. E dato che il punto è proprio incassare in crypto, è coerente che anche il server si paghi in crypto, senza KYC.

Installazione

Punta pay.example.com sul server, poi, come root su un Ubuntu 24.04 o Debian 12 appena installato:

mkdir BTCPayServer && cd BTCPayServer
git clone https://github.com/btcpayserver/btcpayserver-docker
cd btcpayserver-docker

export BTCPAY_HOST="pay.example.com"
export LETSENCRYPT_EMAIL="you@yourdomain.com"
export NBITCOIN_NETWORK="mainnet"
export BTCPAYGEN_CRYPTO1="btc"
export BTCPAYGEN_ADDITIONAL_FRAGMENTS="opt-save-storage-xxs"
export BTCPAYGEN_REVERSEPROXY="nginx"
export BTCPAYGEN_LIGHTNING="none"
. ./btcpay-setup.sh -i

È opt-save-storage-xxs a far entrare tutto: Bitcoin Core pota fino a 5 GB di blocchi. Lo script scarica le immagini, crea un servizio systemd btcpayserver e avvia tutto. Strada facendo riavvia anche il demone Docker: un motivo in più per dare a BTCPay un server tutto suo invece di infilarlo accanto ad altri container.

Controlla il nodo:

bitcoin-cli.sh getblockchaininfo

Confronta blocks con headers e guarda "pruned": true. Dopo venti minuti di test eravamo a circa 218.000 blocchi su circa 972.000: i primi sono minuscoli, quindi non fare proiezioni. Il lavoro vero arriva dopo.

Primo accesso: fallo subito

Apri https://pay.example.com appena risponde. BTCPay ti porta a una pagina di registrazione, e il primo account diventa amministratore del server. Se qualcun altro trova la pagina prima di te, il tuo server di pagamento è suo. Registrati, poi guarda in Server Settings → Policies e imposta le nuove registrazioni come preferisci.

Poi crea un negozio e collega il tuo wallet con la sua chiave pubblica estesa (xpub), da un hardware wallet o dall'esportazione del wallet desktop. BTCPay deriva un indirizzo nuovo per ogni fattura e non vede mai una chiave privata. Usa per questo un wallet nuovo o un account nuovo invece di uno con anni di storia: a un nodo potato piace seguire ciò che succede da adesso in poi.

Finché il nodo non si è messo in pari, BTCPay mostra che sta ancora sincronizzando e non osserva i pagamenti. Pianifica il lancio dopo la sincronizzazione, non per la sera in cui lo installi.

Cosa sapere prima di andare online

  • La prima sincronizzazione è lunga. Un nodo potato scarica e verifica comunque l'intera catena — oltre 700 GB — prima di poter buttare i blocchi vecchi. Sui nostri piani il traffico è illimitato a 1 Gbit/s, quindi non costa nulla in più, ma su un server da 4 vCPU ragiona in giorni. Nel repository c'è uno script di sincronizzazione veloce; salta quel lavoro fidandosi della copia dell'insieme UTXO di qualcun altro, il che vanifica in parte il motivo per cui tieni un nodo tuo.
  • Aggiornamenti. btcpay-update.sh scarica l'ultima versione di BTCPay e delle sue dipendenze. Lancialo in un'ora tranquilla, non nel mezzo dei saldi.
  • Cosa salvare. Con un wallet solo xpub le tue monete non sono sul server. Perderesti la configurazione del negozio e lo storico delle fatture in Postgres: fai il backup di quel volume e tieni il seed del wallet in un posto che non c'entri nulla con questo server.
  • Lightning più avanti. Parti on-chain. Lightning significa una finestra di blocchi più ampia, gestione dei canali e liquidità in entrata: un progetto a sé e un piano Pro che configuriamo su richiesta.

Il mio parere: per un piccolo negozio che incassa bitcoin una volta al giorno, BTCPay su Small-IP è la soluzione più pulita che esista. Se ti servono pagamenti con carta o prelievi in valuta fiat, non è lo strumento giusto.

Correlati

Pronto a fare il deploy? Paga in crypto, niente KYC — online in circa un minuto.

Fai il deploy ora →

FAQ

Quanto disco serve a BTCPay Server?

Con il profilo opt-save-storage-xxs il nodo Bitcoin conserva solo circa 5 GB di blocchi. A questi si aggiungono il chainstate (l'insieme UTXO, una dozzina di GB e in crescita), circa 2,5 GB di immagini Docker e il sistema. Tutto entra nei 35 GB di Small-IP. Il profilo successivo, opt-save-storage-xs, da solo tiene 25 GB di blocchi e richiede un piano Pro, disponibile su richiesta.

Quanto dura la prima sincronizzazione?

Giorni, non ore. Anche un nodo potato scarica e verifica l'intera blockchain di Bitcoin — oltre 700 GB di traffico — e solo dopo butta via i blocchi vecchi. Sui nostri piani il traffico è illimitato, quindi il download non costa nulla in più, ma BTCPay non vedrà pagamenti finché il nodo non si è messo in pari.

BTCPay custodisce le mie monete?

No, se colleghi un wallet tramite la sua chiave pubblica estesa (xpub). Il server può allora creare indirizzi e osservare i pagamenti, ma non ha chiavi private e non può spendere nulla. Perdere il server significa perdere le impostazioni del negozio, non i soldi.

Mi serve un IP dedicato?

Sì. Il tuo negozio e i browser dei tuoi clienti devono raggiungere BTCPay sulla porta 443, e Let's Encrypt ha bisogno della porta 80 per emettere il certificato. Un piano NAT accetta dall'esterno solo la tua porta SSH.

Può accettare anche Lightning o Monero?

Entrambi esistono come opzione, ma nessuno dei due entra nei piani piccoli. Un nodo Lightning vuole una finestra di blocchi più ampia e più cura dei pagamenti on-chain; un nodo Monero richiede molto più disco di un nodo Bitcoin potato. Inizia con bitcoin on-chain su Small-IP; per l'uno o l'altro, chiedici un piano Pro.

Commenti

Ancora nessun commento. Sii il primo.

Lascia un commento

I commenti sono moderati prima di comparire.