هر پردازشگر پرداختی که وسط بایستد، شرایط خودش، KYC خودش و دکمهٔ مسدودکردن موجودی خودش را میآورد. BTCPay Server این وسط را حذف میکند. فاکتورها روی سرور شما ساخته میشوند، مشتری به آدرسی پرداخت میکند که از کیف پول شما مشتق شده، و نود Bitcoin خود شما پرداخت را تأیید میکند. هیچکس جز شما نمیتواند خاموشش کند.
برای فروشگاهها، فریلنسرها و سرویسهایی است که از قبل bitcoin میپذیرند — یا میخواهند بپذیرند — و ترجیح میدهند این کار را به یک شرکت نسپارند.
کدام پلن
BTCPay بهصورت حدود هفت کانتینر اجرا میشود: اپ BTCPay، NBXplorer (که زنجیره را زیر نظر دارد)، Bitcoin Core، Postgres و یک nginx در جلو با Let's Encrypt خودکار. روی سرور آزمایشی ما در شروع حدود ۰٫۷ گیگابایت RAM مصرف کردند و Bitcoin Core هنگام همگامسازی بیشتر میگیرد؛ ۴ گیگابایت کاملاً کافی است. محدودیت واقعی دیسک است، نه حافظه.
| چیدمان | پلن |
|---|---|
| BTC روی زنجیره، نود هرسشده با حدود ۵ گیگابایت بلاک | Small-IP: ۴ vCPU، ۴ گیگابایت، ۳۵ گیگابایت (۱۶ دلار در ماه) |
| همان، با جای بیشتر برای لاگها و بهروزرسانیها | Medium-IP: ۶ vCPU، ۶ گیگابایت، ۴۵ گیگابایت (۲۰ دلار در ماه) |
| Lightning، پنجرهٔ بلاک بزرگتر یا کوین دوم | Pro-32: ۸ vCPU، ۳۲ گیگابایت، ۴۰۰ گیگابایت (۴۰ دلار در ماه)، با درخواست |
به پلنی با IPv4 اختصاصی نیاز دارید: مشتریان از طریق HTTPS به BTCPay میرسند و Let's Encrypt باید به پورت 80 برسد. آلمان یا فنلاند را انتخاب کنید، هر کدام که هنگام سفارش موجود باشد — برای صفحهٔ پرداخت، تأخیر تقریباً اهمیتی ندارد. و چون کل هدف پذیرفتن رمزارز است، بجاست که خود سرور هم با رمزارز و بدون KYC پرداخت شود.
نصب
دامنهٔ pay.example.com را به سرور اشاره دهید، سپس با root روی یک Ubuntu 24.04 یا Debian 12 تازه:
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 است که همهچیز را جا میدهد: Bitcoin Core بلاکها را تا ۵ گیگابایت هرس میکند. اسکریپت ایمیجها را میکشد، سرویس systemd به نام btcpayserver میسازد و همهچیز را اجرا میکند. در این میان دیمن Docker را هم ریاستارت میکند — یک دلیل دیگر برای اینکه به BTCPay سرور جداگانه بدهید، نه اینکه آن را کنار کانتینرهای دیگر بچپانید.
نود را بررسی کنید:
bitcoin-cli.sh getblockchaininfo
مقدار blocks را با headers مقایسه کنید و به "pruned": true نگاه کنید. بیست دقیقه پس از شروع آزمایش ما، حدود ۲۱۸ هزار از نزدیک به ۹۷۲ هزار بلاک دریافت شده بود — بلاکهای اولیه بسیار کوچکاند، پس از روی آن برآورد نکنید. کار اصلی بعداً میآید.
اولین ورود: همین حالا
https://pay.example.com را به محض پاسخ دادن باز کنید. BTCPay شما را به صفحهٔ ثبتنام میبرد، و اولین حساب مدیر سرور میشود. اگر کس دیگری پیش از شما صفحه را پیدا کند، سرور پرداخت شما مال او میشود. ثبتنام کنید، سپس به Server Settings → Policies بروید و ثبتنامهای جدید را همانطور که میخواهید تنظیم کنید.
سپس یک فروشگاه بسازید و کیف پولتان را با کلید عمومی توسعهیافته (xpub) وصل کنید — از یک کیف پول سختافزاری یا خروجی کیف پول دسکتاپ. BTCPay برای هر فاکتور آدرس تازهای مشتق میکند و هرگز کلید خصوصی نمیبیند. برای این کار از کیف پول یا حساب تازه استفاده کنید، نه کیف پولی با سالها سابقه: نود هرسشده بیشتر از همه با دنبال کردن آنچه از این به بعد رخ میدهد راحت است.
تا وقتی نود به شبکه نرسیده، BTCPay نشان میدهد که هنوز در حال همگامسازی است و پرداختها را زیر نظر نمیگیرد. راهاندازی را برای بعد از همگامسازی برنامهریزی کنید، نه شب نصب.
پیش از راهاندازی بدانید
- همگامسازی اول طولانی است. نود هرسشده هم پیش از اینکه بتواند بلاکهای قدیمی را دور بریزد، کل زنجیره را — بیش از ۷۰۰ گیگابایت — دانلود و راستیآزمایی میکند. ترافیک در پلنهای ما با سرعت 1 Gbit/s نامحدود است، پس هزینهٔ اضافه ندارد، اما روی سرور ۴ vCPU باید روزشماری کنید. در مخزن یک اسکریپت همگامسازی سریع هست؛ این کار را با اعتماد به نسخهٔ کس دیگری از مجموعهٔ UTXO دور میزند و بخشی از دلیل اجرای نود خودتان را بیاثر میکند.
- بهروزرسانیها.
btcpay-update.shآخرین نسخهٔ BTCPay و وابستگیهایش را میآورد. آن را در ساعتی خلوت اجرا کنید، نه وسط حراج. - از چه چیزی پشتیبان بگیرید. با کیف پولی که فقط از طریق xpub وصل شده، کوینهای شما روی سرور نیستند. آنچه ممکن است از دست برود تنظیمات فروشگاه و تاریخچهٔ فاکتورها در Postgres است — از آن volume پشتیبان بگیرید و عبارت بازیابی کیف پولتان را جایی نگه دارید که هیچ ربطی به این سرور نداشته باشد.
- Lightning بعداً. روی زنجیره شروع کنید. Lightning یعنی پنجرهٔ بلاک بزرگتر، مدیریت کانالها و نقدینگی ورودی — پروژهای مستقل و پلن Pro که با درخواست راهاندازی میکنیم.
نظر من: برای فروشگاه کوچکی که روزی یک بار bitcoin میگیرد، BTCPay روی Small-IP تمیزترین چیدمان ممکن است. اگر پرداخت با کارت یا برداشت به پول رایج لازم دارید، این ابزارِ آن کار نیست.
مرتبط
- نود Bitcoin خودتان را روی VPS اجرا کنید: فقط نود، اگر فقط میخواهید کیف پولتان را راستیآزمایی کنید
- نود Monero خودتان را روی VPS اجرا کنید
- Crypto VPS: پرداخت هزینهٔ سرور با رمزارز
- سرور VPS برای وبسایت با IP اختصاصی: فروشگاهی که مشتریان را به BTCPay میفرستد
- چگونه فایروال ufw را پیکربندی کنیم
نظرات
هنوز نظری نیست. اولین نفر باشید.