496 / 736BTCPAY

BTCPay Server

Infrastruktur sendiri untuk menerima pembayaran

Anda ingin menerima bitcoin di toko daring kecil dan mengetahui pesanan mana yang sudah dibayar. BTCPay Server menyiapkan halaman pembayaran bagi pelanggan dan melacak penerimaan untuk Anda. Perangkat lunak ini dapat memakai dompet Anda tanpa memperoleh kunci untuk membelanjakan dana. Namun, hasilnya bergantung pada konfigurasi dan siapa yang mengelola server.

BTCPay Server adalah perangkat lunak bebas untuk menerima pembayaran bitcoin, tersedia dengan lisensi MIT. Anda dapat menjalankannya di server sendiri atau memakai instalasi milik pihak lain. Perangkat lunak ini membuat permintaan pembayaran, mencocokkan penerimaan, dan membantu pencatatan. Proyeknya sendiri bukan rekening tempat Anda harus menitipkan uang, juga bukan perantara yang memutuskan sengketa barang.

Bayangkan toko buku daring. Pelanggan memilih bitcoin lalu BTCPay Server membuat invoice, yaitu permintaan membayar jumlah tertentu. Halaman pembayaran menampilkan alamat atau permintaan Lightning sesuai pengaturan toko. Perangkat lunak memantau penerimaan dan memberi tahu toko yang terhubung ketika status berubah. Anda tidak perlu lagi mencocokkan setiap pembayaran secara manual. Sistem ini juga dapat melayani kasir atau mengumpulkan donasi. Kode terbuka memungkinkan program diperiksa dan diubah, tetapi dengan sendirinya tidak membuktikan keamanan suatu instalasi. [1]

Untuk dompet yang sudah ada, server bisa memperoleh extended public key, informasi yang dipakai untuk menurunkan alamat penerimaannya. Kunci privat yang mengizinkan pengeluaran dapat tetap berada di luar server, misalnya dalam dompet perangkat keras. Dompet panas berbeda: rahasianya disimpan langsung pada perangkat yang terhubung ke internet. Akses ke node Lightning yang menangani pembayaran cepat juga dapat mengizinkan pengeluaran. Jadi, mengelola server dan mengendalikan uang merupakan dua hal terpisah. Sebutan self-hosted, yakni dioperasikan sendiri, tidak menjawab keduanya secara otomatis. [2] [3]

Server pihak lain dapat menghemat pekerjaan pemasangan dan pemeliharaan. Namun, meski dana masuk ke dompet sendiri, Anda tetap bergantung pada pengelolanya. Server yang dimodifikasi atau dibobol dapat menampilkan alamat penyerang, bukan alamat Anda. Memperoleh kunci publik saja tidak memungkinkan penyerang membelanjakan koin yang sudah diterima, tetapi kasir yang dimanipulasi dapat mengalihkan pembayaran berikutnya. Periksa penerimaan juga melalui dompet independen. Server sendiri yang dibobol menghadapi risiko serupa. Penyedia hosting juga memengaruhi ketersediaan layanan dan privasi pembayaran. [4]

Harga buku bisa ditetapkan dalam koruna Ceko sementara pelanggan membayar bitcoin. Invoice menetapkan kurs dan jumlah untuk waktu terbatas. Processing berarti seluruh jumlah sudah dibayar, tetapi syarat penyelesaian, misalnya konfirmasi blok, belum terpenuhi. Settled berarti syarat tersebut terpenuhi; Lightning biasanya tidak menunggu blok. Toko juga harus menangani kekurangan, kelebihan, dan keterlambatan pembayaran. Mengubah status secara manual tidak menghasilkan konfirmasi jaringan. Mengonversi harga di layar juga tidak mengirim koruna ke rekening bank: penukaran melalui plugin atau penyedia adalah layanan lain dengan syarat dan biaya sendiri. [5] [6] [3]

Program saling terhubung melalui Greenfield API, antarmuka untuk berkomunikasi. Toko menyimpan pengenal invoice bersama pesanan. Webhook, pesan otomatis dari server, memberitahukan perubahan; keasliannya harus diverifikasi sesuai dokumentasi. Kunci akses API hanya diberi izin yang dibutuhkan toko tersebut. Jika pesan yang sama datang lagi, toko tidak boleh mengirim buku kedua. Kembalinya pelanggan ke halaman terima kasih juga bukan bukti pembayaran. Setelah gangguan, cocokkan catatan lokal dengan invoice dan pembayaran yang benar-benar diterima. [7]

Lightning Network menggunakan kanal pembayaran sehingga setiap pembayaran tidak perlu dicatat sendiri dalam blok. Node Anda harus tersedia dan memiliki likuiditas masuk: ruang dalam kanal yang memungkinkan dana mengalir kepada Anda. Karena itu, pengelolaan berkelanjutan diperlukan. Anda dapat menggunakan bantuan likuiditas, pertukaran antarsistem pembayaran, atau layanan kustodian yang mengendalikan dana pelanggan. Pilihan-pilihan ini memiliki izin, biaya, dan risiko berbeda. Nama BTCPay Server pada halaman pembayaran tidak menjelaskan pilihan toko dan tidak menjamin setiap pembayaran berhasil. [8]

Informasi pemulihan dompet bukan cadangan seluruh toko. Selain kunci, Anda memerlukan catatan invoice, konfigurasi, dan data lain sesuai pemasangan. Dalam Lightning, menjalankan node dari status kanal lama sangat berbahaya: pemulihan yang keliru dapat membahayakan dana. Pemindahan terencana berbeda dari pemulihan setelah kerusakan. Saat migrasi, node asli tidak boleh terus berubah atau berjalan bersamaan dengan salinan yang dipulihkan. Ikuti prosedur untuk implementasi yang digunakan. Uji pemulihan Lightning secara terisolasi dari jaringan dan node mitra agar pengujian tidak memengaruhi kanal aktif. Panduan Docker, lingkungan yang menjalankan komponen aplikasi dalam kontainer terpisah, berlaku untuk cara pemasangan tersebut. [9]

Keuntungannya adalah Anda dapat menentukan infrastruktur pembayaran sendiri. Namun, seseorang tetap harus menangani pembaruan, akses administrator, layanan yang terbuka ke internet, dan cadangan yang dapat dipulihkan. Perangkat lunak tidak mengambil persentase setiap pembayaran, tetapi hosting, perangkat keras, biaya jaringan, dan bantuan Lightning bisa memerlukan biaya. Jangan menyimpan data pribadi pelanggan yang tidak perlu. Jika buku hilang atau dikembalikan, pedagang menangani keluhan dan pengembalian dana; pengembang BTCPay Server tidak menjadi hakim transaksi itu. Catatan invoice membantu pembukuan tanpa menggantikan seluruh kewajibannya. [10] [3] [7]

Contoh · BTCPAY

Kasir terputus, dompet tetap ada

Sebuah toko hanya menggunakan data publik dompet eksternal ketika servernya berhenti merespons. Bitcoin yang telah diterima di bawah kendali kunci dompet itu tidak menghilang. Namun, pelanggan mungkin tidak dapat membuka halaman pembayaran baru dan toko tidak melihat status pesanan terkini. Setelah pulih, toko memeriksa pengaturan penerimaan lalu mencocokkan invoice dengan dompet. Contoh ini tidak berlaku dengan cara yang sama untuk kunci rahasia yang hilang bersama dompet panas di server atau pemulihan kanal Lightning dari data lama.

Untuk gambaran yang lebih utuh, baca entri ini bersama Bitcoin Payment Processor, Bitcoin Point of Sale, Kustodi mandiri, Lightning Network, Merchant Adoption, Bitcoin. Entri ini juga dirujuk dari Bitcoin Coffee, Transaction Labeling, Bitcoin Payment Processor, Bitcoin Point of Sale.

01Apakah BTCPay Server otomatis berarti kendali penuh atas dana sendiri?

Tidak. Periksa siapa yang mengendalikan kunci dompet dan izin apa yang dimiliki server atau layanan Lightning. Data publik dompet eksternal saja tidak mengizinkan pengeluaran. Dompet panas atau layanan kustodian bisa berbeda. Bahkan tanpa kunci privat, kasir yang dibobol dapat menampilkan alamat yang keliru.

02Apakah kata-kata cadangan dompet cukup untuk memulihkan semuanya?

Kata-kata itu mungkin memulihkan dompet Bitcoin terkait, tetapi bukan daftar invoice, pengaturan toko, atau secara otomatis status kanal Lightning. Bagian-bagian tersebut membutuhkan cadangan dan prosedur sendiri. Uji dengan aman: salinan Lightning lama tidak boleh berkomunikasi dengan jaringan seolah-olah ia node yang sedang aktif.

DOC · 001BTCPay Server — Source repositorySumber primer DOC · 002BTCPay Server — Wallet setupDokumentasi DOC · 003BTCPay Server — General FAQDokumentasi DOC · 004BTCPay Server — Third-party hosting risksDokumentasi DOC · 005BTCPay Server — Invoice lifecycleDokumentasi DOC · 006BTCPay Server — Store rates and policiesDokumentasi DOC · 007BTCPay Server — eCommerce integrationDokumentasi DOC · 008BTCPay Server — Lightning optionsDokumentasi DOC · 009BTCPay Server — Backup and restoreDokumentasi DOC · 010BTCPay Server — MaintenanceDokumentasi
Direvisi: Utamakan sumber · Bukan nasihat investasi