Setiap pemroses pembayaran di tengah datang dengan syaratnya sendiri, KYC-nya sendiri, dan tombolnya sendiri untuk membekukan saldo Anda. BTCPay Server menghapus bagian tengah itu. Tagihan dibuat di server Anda, pelanggan membayar ke alamat yang diturunkan dari dompet Anda, dan node Bitcoin milik Anda sendiri yang mengonfirmasi pembayaran. Tidak ada yang bisa mematikannya selain Anda.
Ini untuk toko, freelancer, dan layanan yang sudah menerima bitcoin — atau ingin — dan lebih memilih tidak menyerahkan pekerjaan itu kepada perusahaan.
Paket yang mana
BTCPay berjalan sebagai sekitar tujuh kontainer: aplikasi BTCPay, NBXplorer (yang memantau rantai), Bitcoin Core, Postgres, dan nginx di depan dengan Let's Encrypt otomatis. Di server uji kami, semuanya memakai sekitar 0,7 GB RAM di awal, dan Bitcoin Core memakai lebih banyak selama sinkronisasi; 4 GB lebih dari cukup. Batas sebenarnya adalah disk, bukan memori.
| Konfigurasi | Paket |
|---|---|
| BTC on-chain, node pruned menyimpan ~5 GB blok | Small-IP: 4 vCPU, 4 GB, 35 GB ($16/bln) |
| Sama, dengan ruang lebih untuk log dan pembaruan | Medium-IP: 6 vCPU, 6 GB, 45 GB ($20/bln) |
| Lightning, jendela blok lebih besar, atau koin kedua | Pro-32: 8 vCPU, 32 GB, 400 GB ($40/bln), atas permintaan |
Anda butuh paket dengan IPv4 sendiri: pelanggan menjangkau BTCPay lewat HTTPS, dan Let's Encrypt harus bisa mencapai port 80. Pilih Jerman atau Finlandia, mana pun yang tersedia saat memesan — untuk halaman pembayaran, latensi hampir tidak berpengaruh. Dan karena intinya adalah menerima kripto, cocok kalau servernya sendiri juga dibayar dengan kripto, tanpa KYC.
Instalasi
Arahkan pay.example.com ke server, lalu sebagai root di Ubuntu 24.04 atau Debian 12 yang baru:
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 yang membuatnya muat: Bitcoin Core memangkas blok hingga 5 GB. Skrip mengunduh image, membuat layanan systemd btcpayserver, dan menjalankan semuanya. Di tengah jalan ia juga me-restart daemon Docker — satu alasan lagi untuk memberi BTCPay server sendiri alih-alih menjejalkannya di samping kontainer lain.
Periksa node:
bitcoin-cli.sh getblockchaininfo
Bandingkan blocks dengan headers, dan lihat "pruned": true. Dua puluh menit setelah uji kami dimulai, sudah sekitar 218.000 dari kira-kira 972.000 blok — blok-blok awal sangat kecil, jadi jangan diekstrapolasi. Pekerjaan sebenarnya datang belakangan.
Login pertama: lakukan sekarang
Buka https://pay.example.com begitu ia merespons. BTCPay membawa Anda ke halaman pendaftaran, dan akun pertama menjadi admin server. Kalau orang lain menemukan halaman itu lebih dulu, server pembayaran Anda menjadi miliknya. Daftar, lalu buka Server Settings → Policies dan atur pendaftaran baru sesuai keinginan Anda.
Kemudian buat toko dan hubungkan dompet Anda dengan extended public key (xpub) — dari dompet hardware atau ekspor dompet desktop. BTCPay menurunkan alamat baru untuk setiap tagihan dan tidak pernah melihat kunci privat. Gunakan dompet baru atau akun baru untuk ini, bukan yang sudah punya riwayat bertahun-tahun: node pruned paling nyaman mengikuti apa yang terjadi mulai sekarang.
Sampai node menyusul jaringan, BTCPay menampilkan bahwa ia masih menyinkronkan dan tidak memantau pembayaran. Rencanakan peluncuran setelah sinkronisasi, bukan pada malam Anda memasangnya.
Yang perlu diketahui sebelum live
- Sinkronisasi pertama itu lama. Node pruned tetap mengunduh dan memverifikasi seluruh rantai — lebih dari 700 GB — sebelum bisa membuang blok lama. Trafik di paket kami tanpa batas di 1 Gbit/s, jadi tidak menambah biaya, tetapi di server 4 vCPU hitunglah dalam hari. Ada skrip fast-sync di repositori; ia melewati pekerjaan itu dengan memercayai salinan set UTXO milik orang lain, yang menggugurkan sebagian alasan Anda menjalankan node sendiri.
- Pembaruan.
btcpay-update.shmengambil BTCPay terbaru beserta dependensinya. Jalankan di jam yang sepi, bukan di tengah promo. - Apa yang perlu dicadangkan. Dengan dompet yang hanya terhubung lewat xpub, koin Anda tidak ada di server. Yang bisa hilang adalah pengaturan toko dan riwayat tagihan di Postgres — cadangkan volume itu, dan simpan seed dompet Anda di tempat yang sama sekali tidak terkait dengan server ini.
- Lightning nanti saja. Mulai on-chain. Lightning berarti jendela blok lebih besar, pengelolaan channel, dan likuiditas masuk — proyek tersendiri, dan paket Pro yang kami siapkan atas permintaan.
Pendapat saya: untuk toko kecil yang menerima bitcoin sekali sehari, BTCPay di Small-IP adalah konfigurasi paling bersih yang ada. Kalau Anda butuh pembayaran kartu atau pencairan ke fiat, ini bukan alatnya.
Terkait
- Jalankan node Bitcoin sendiri di VPS: node saja, jika Anda hanya ingin memverifikasi dompet
- Jalankan node Monero sendiri di VPS
- Crypto VPS: membayar server dengan kripto
- VPS untuk situs web dengan IP sendiri: toko yang mengarahkan pelanggan ke BTCPay
- Cara mengonfigurasi firewall ufw
Komentar
Belum ada komentar. Jadilah yang pertama.