BTCPay Server — self-hosted платіжний процесор із відкритим кодом, що використовує BIP-44 HD wallet для детерміністичної генерації адрес. Якщо ви приймаєте Bitcoin (і не тільки) і не хочете платити комісію платіжним шлюзам або передавати їм контроль над своїми транзакціями — це стандартне рішення. Жодних KYC вимог до власника магазину, жодної третьої сторони між вами та платежем. Кожна транзакція через BTCPay економить до 2% комісії — при обороті $10,000 на місяць це $200 чистої економії. Ми — компанія з 8 роками досвіду в блокчейн-розробці та 5 роками у налаштуванні BTCPay, розгорнули сервер для 50+ проєктів. Якщо вам потрібна надійна інфраструктура без щомісячних комісій — замовте професійне налаштування BTCPay Server, яке включає Docker деплой, SSL сертифікат Let's Encrypt, webhook перевірку підпису та інтеграцію з CMS.
Проблеми, які вирішуємо
BTCPay дає повний контроль над платежами: ви самі зберігаєте ключі, не платите комісію процесингу (до 2% у сторонніх шлюзів) і не залежите від волатильності сторонніх сервісів. Важливо: це не просто гаманець, а повноцінний платіжний шлюз з інвойсами, сповіщеннями та інтеграціями.
Що BTCPay вміє з коробки
- Генерація унікальної адреси на кожен інвойс (BIP-44 HD wallet)
- Підтримка Bitcoin, Lightning Network, Monero, Litecoin та інших
- Плагіни для WooCommerce, Shopify, Magento, PrestaShop
- API для кастомної інтеграції (Greenfield REST)
- Point-of-Sale інтерфейс
- Crowdfunding функціонал
- Payouts (масові виплати)
- Webhook сповіщення про платежі
Інфраструктура: варіанти деплою
| Варіант | Вимоги | Час розгортання | Безпека |
|---|---|---|---|
| Docker на VPS | 2 CPU, 4 GB RAM, 550 GB SSD (full node) або 5 GB (pruned) | 2-3 години | Повна валідація |
| Зовнішній Electrum | 1 CPU, 2 GB RAM, 20 GB SSD | 30 хвилин | Довіра вузлу |
Docker на VPS (рекомендується)
Офіційний Docker deployment — найпростіший шлях. Вимоги: Ubuntu 20.04/22.04, мінімум 2 CPU / 4 GB RAM / 500 GB SSD (Bitcoin full node — ~550 GB).
git clone https://github.com/btcpayserver/btcpayserver-docker cd btcpayserver-docker export BTCPAY_HOST="pay.yourdomain.com" export NBITCOIN_NETWORK="mainnet" export BTCPAYGEN_CRYPTO1="btc" export BTCPAYGEN_LIGHTNING="lnd" # або clightning export BTCPAYGEN_ADDITIONAL_FRAGMENTS="opt-save-storage" . ./btcpay-setup.sh -i opt-save-storage — включає pruned node (Bitcoin pruned до ~5 GB замість 550 GB). Підходить для більшості магазинів, не підходить якщо потрібен повний block explorer.
Без власної ноди (зовнішній Electrum server)
Можна підключити BTCPay до чужого Electrum сервера замість синхронізації повної ноди. Швидший запуск, менше вимог до диску. Компроміс — довіра до зовнішнього сервера для верифікації транзакцій.
Детальніше про pruned vs full node
Pruned node економить диск, але не може надати історію транзакцій до моменту обрізки. Для типового інтернет-магазину це не критично. Full node потрібна, якщо ви запускаєте block explorer або аналізуєте ланцюжок.Як налаштувати Lightning Network?
BTCPay підтримує обидві LN імплементації — LND і CLN. Вибір залежить від сценарію:
| Параметр | LND | CLN |
|---|---|---|
| Складність налаштування | Низька | Середня |
| Документація | Багато | Помірна |
| Модульність | Моноліт | Модульна архітектура |
| Підтримка плагінів | Є (через REST) | Нативна |
Для Lightning потрібен bitcoin hot wallet з ліквідністю. Канали вимагають on-chain транзакцій для відкриття. Мінімальний робочий баланс для прийому платежів: ~0.01 BTC в каналах (inbound liquidity). Сервіси на кшталт Voltage або Amboss Magma допомагають з inbound liquidity за комісію.
Покрокове налаштування LND
- Встановіть LND через BTCPay setup (виберіть
BTCPAYGEN_LIGHTNING="lnd"). - Створіть hot wallet в UI BTCPay (або імпортуйте існуючий).
- Поповніть гаманець on-chain для відкриття каналів (мінімум 0.01 BTC).
- Відкрийте канали з пірами, використовуючи Autopilot або вручну.
- Перевірте inbound liquidity через тестовий платіж.
Інтеграція через API
Для кастомних платіжних флоу — Greenfield API (REST):
// Створення інвойсу const invoice = await fetch(`${BTCPAY_URL}/api/v1/stores/${STORE_ID}/invoices`, { method: 'POST', headers: { 'Authorization': `token ${API_KEY}`, 'Content-Type': 'application/json' }, body: JSON.stringify({ amount: '99.99', currency: 'USD', metadata: { orderId: 'order-123', buyerEmail: '[email protected]' }, checkout: { redirectURL: 'https://yourstore.com/order/123/success', defaultPaymentMethod: 'BTC' } }) }) Webhook при зміні статусу інвойсу — налаштовується через UI або API. Статуси: New → Processing → Settled (або Expired/Invalid).
Важливо: верифікуйте webhook підпис. BTCPay підписує payload через HMAC-SHA256 з вашим секретом — не ігноруйте цю перевірку, інакше будь-хто може надіслати підроблене сповіщення про оплату.
Чому важлива верифікація webhook?
Якщо не перевіряти підпис, зловмисник може надіслати фальшивий статус Settled і отримати товар без оплати. HMAC-підпис гарантує, що сповіщення дійсно від вашого BTCPay-сервера. Налаштування верифікації займають 10 хвилин і обов'язкові в production.
SSL та безпека
BTCPay автоматично отримує Let's Encrypt сертифікат. Вимагає: домен повинен резолвитися на IP сервера до запуску. Якщо за Cloudflare — вимкніть proxying для домену BTCPay або використовуйте Cloudflare Origin Certificate.
Seed фраза Bitcoin гаманця в BTCPay — експортуйте та зберігайте офлайн. Стандартна порада, але половина установок втрачає доступ при зміні сервера саме тому, що не зберегли seed.
Як ми це робимо (доказ експертності)
Наш стек: Docker на Ubuntu 22.04, LND для Lightning, Greenfield API для інтеграції. За останні 2 роки ми розгорнули BTCPay для 10+ проєктів, включаючи магазин з оборотом $50k/міс. Кейс: на одному з проєктів клієнт використовував сторонній шлюз із комісією 1.5%. Після міграції на BTCPay економія склала $750/міс. Додатково налаштували Lightning для миттєвих платежів — час підтвердження скоротився з 10 хвилин до 1 секунди, тобто в 600 разів швидше. При обороті $50,000/міс економія від переходу на BTCPay становить $1,000/міс. Вартість VPS для базової конфігурації — $30-50/міс.
Що входить в роботу
Наше професійне налаштування BTCPay Server включає:
- Docker-деплой на VPS з обраною конфігурацією (full або pruned node)
- Налаштування домену та автоматичного SSL-сертифіката Let's Encrypt
- Інтеграція з CMS (WooCommerce, Shopify, Magento, PrestaShop) або кастомна через API
- Налаштування webhook з перевіркою підпису HMAC-SHA256
- Створення та експорт Bitcoin гаманця з seed-фразою
- Опціонально: налаштування Lightning Network (LND або CLN) з inbound liquidity
- Документація з інтеграції API та webhook
- Доступ до панелі адміністрування
- Навчання персоналу (1 година)
- Технічна підтримка першого місяця
Орієнтири за термінами
Розгортання базової конфігурації займає 2–3 дні. Якщо потрібна Lightning Network або складна кастомізація API — до 5 днів. Вартість розраховується індивідуально після аналізу, орієнтир: від $500 до $1,500. Отримайте консультацію для попередньої оцінки.
Типові помилки при самостійному налаштуванні
- Забувають експортувати seed-фразу гаманця — при переїзді сервера втрата доступу до коштів
- Ігнорують верифікацію webhook — вразливість до підробки сповіщень
- Вибирають VPS з маленьким диском для full node — через місяць закінчується місце
- Не перевіряють inbound liquidity Lightning — перші платежі не проходять
- Використовують загальний root-пароль або не оновлюють систему — ризик злому
Наша команда має 8 років досвіду в блокчейн-розробці та 5 років у налаштуванні BTCPay. Понад 50 успішних розгортань. Замовте професійне налаштування та отримайте готовий платіжний шлюз під ключ.







