כל מעבד תשלומים באמצע מגיע עם תנאים משלו, KYC משלו וכפתור משלו שמקפיא לכם את היתרה. BTCPay Server מוציא את האמצע מהתמונה. החשבוניות נוצרות על השרת שלכם, הלקוח משלם לכתובת שנגזרת מהארנק שלכם, וצומת ה-Bitcoin שלכם מאשר את התשלום. אף אחד מלבדכם לא יכול לכבות את זה.
זה מיועד לחנויות, לפרילנסרים ולשירותים שכבר מקבלים bitcoin — או רוצים — ומעדיפים לא למסור את העבודה הזו לחברה.
איזו תוכנית
BTCPay רץ כשבעה קונטיינרים בערך: אפליקציית BTCPay, NBXplorer (שעוקב אחרי השרשרת), Bitcoin Core, Postgres ו-nginx מלפנים עם Let's Encrypt אוטומטי. בשרת הבדיקה שלנו הם צרכו כ-0.7 GB RAM בהתחלה, ו-Bitcoin Core לוקח יותר בזמן הסנכרון; 4 GB זה בשפע. המגבלה האמיתית היא דיסק, לא זיכרון.
| תצורה | תוכנית |
|---|---|
| BTC on-chain, צומת גזום ששומר ~5 GB של בלוקים | Small-IP: 4 vCPU, 4 GB, 35 GB ($16/חודש) |
| אותו דבר, עם יותר מרווח ללוגים ולעדכונים | Medium-IP: 6 vCPU, 6 GB, 45 GB ($20/חודש) |
| Lightning, חלון בלוקים גדול יותר או מטבע שני | Pro-32: 8 vCPU, 32 GB, 400 GB ($40/חודש), לפי בקשה |
אתם צריכים תוכנית עם IPv4 משלה: לקוחות מגיעים ל-BTCPay ב-HTTPS, ו-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 גוזם את הבלוקים עד 5 GB. הסקריפט מושך את האימג'ים, יוצר שירות systemd בשם btcpayserver ומפעיל הכול. בדרך הוא גם מפעיל מחדש את דמון ה-Docker — עוד סיבה לתת ל-BTCPay שרת משלו במקום לדחוס אותו ליד קונטיינרים אחרים.
בדקו את הצומת:
bitcoin-cli.sh getblockchaininfo
השוו את blocks ל-headers, ובדקו את "pruned": true. עשרים דקות לתוך הבדיקה שלנו היו בערך 218,000 מתוך כ-972,000 בלוקים — הבלוקים המוקדמים זעירים, אז אל תסיקו מזה. העבודה האמיתית מגיעה אחר כך.
כניסה ראשונה: עשו זאת עכשיו
פתחו את https://pay.example.com ברגע שהוא עונה. BTCPay שולח אתכם לעמוד הרשמה, והחשבון הראשון הופך למנהל השרת. אם מישהו אחר ימצא את העמוד לפניכם, שרת התשלומים שלכם שלו. הירשמו, ואז הסתכלו תחת Server Settings → Policies והגדירו הרשמות חדשות כפי שאתם רוצים.
אחר כך צרו חנות וחברו את הארנק שלכם עם המפתח הציבורי המורחב שלו (xpub) — מארנק חומרה או מייצוא של ארנק שולחני. BTCPay גוזר כתובת חדשה לכל חשבונית ולעולם לא רואה מפתח פרטי. השתמשו לשם כך בארנק חדש או בחשבון חדש, ולא בארנק עם שנים של היסטוריה: לצומת גזום הכי נוח לעקוב אחרי מה שקורה מעכשיו והלאה.
עד שהצומת ישיג את הרשת, BTCPay מראה שהוא עדיין מסנכרן ולא עוקב אחרי תשלומים. תכננו את ההשקה לאחרי הסנכרון, לא לערב ההתקנה.
מה לדעת לפני שעולים לאוויר
- הסנכרון הראשון ארוך. צומת גזום עדיין מוריד ומאמת את כל השרשרת — יותר מ-700 GB — לפני שהוא יכול לזרוק בלוקים ישנים. התעבורה בתוכניות שלנו בלתי מוגבלת ב-1 Gbit/s, כך שזה לא עולה דבר נוסף, אבל בשרת עם 4 vCPU חשבו בימים. במאגר יש סקריפט לסנכרון מהיר; הוא מדלג על העבודה הזו בכך שהוא סומך על העותק של מישהו אחר של סט ה-UTXO, ובכך מבטל חלק מהסיבה להריץ צומת משלכם.
- עדכונים.
btcpay-update.shמושך את ה-BTCPay העדכני ואת התלויות שלו. הריצו אותו בשעה שקטה, לא באמצע מבצע. - ממה לגבות. עם ארנק שמחובר רק דרך xpub, המטבעות שלכם לא על השרת. מה שעלול ללכת לאיבוד הוא הגדרות החנות והיסטוריית החשבוניות ב-Postgres — גבו את ה-volume הזה, ושמרו את ה-seed של הארנק במקום שאין לו שום קשר לשרת הזה.
- Lightning אחר כך. התחילו on-chain. Lightning פירושו חלון בלוקים גדול יותר, ניהול ערוצים ונזילות נכנסת — פרויקט בפני עצמו, ותוכנית Pro שאנחנו מקימים לפי בקשה.
לדעתי: לחנות קטנה שמקבלת bitcoin פעם ביום, BTCPay על Small-IP הוא ההגדרה הנקייה ביותר שיש. אם אתם צריכים תשלומים בכרטיס או משיכות במטבע פיאט, זה לא הכלי.
קשור
- הריצו צומת Bitcoin משלכם על VPS: רק הצומת, אם אתם רוצים רק לאמת את הארנק שלכם
- הריצו צומת Monero משלכם על VPS
- Crypto VPS: תשלום על שרתים בקריפטו
- שרת VPS לאתר עם IP משלו: החנות ששולחת לקוחות ל-BTCPay
- איך להגדיר חומת אש ufw
תגובות
אין עדיין תגובות. היו הראשונים.