Платёжный процессор делает больше, чем просто берёт комиссию. Он держит ваши средства, видит ваших клиентов и может заморозить ваш аккаунт. BTCPay Server — бесплатное программное обеспечение с открытым исходным кодом, которое позволяет принимать Bitcoin напрямую на кошелёк, который вы контролируете. Оно работает на VPS, и в этом руководстве показана стандартная установка на основе Docker.
Что вам понадобится
- VPS с 2 vCPU, 4 ГБ RAM и 80 ГБ диска, если вы запускаете рядом урезанный (pruned) узел Bitcoin. Меньше, если направить его на внешний узел.
- Доменное имя, например
pay.example.com, с A-записью, указывающей на сервер. - Ubuntu 22.04 или 24.04 с установленным Docker и укреплённой настройкой SSH.
Шаг 1: направьте домен на сервер
Сначала создайте A-запись и дождитесь, пока она начнёт разрешаться. Установщик запрашивает сертификат Let's Encrypt для этого имени и завершится ошибкой, если записи нет. Это описано в нашем руководстве по DNS.
Шаг 2: запустите официальный установщик
sudo su -
git clone https://github.com/btcpayserver/btcpayserver-docker
cd btcpayserver-docker
export BTCPAY_HOST="pay.example.com"
export NBITCOIN_NETWORK="mainnet"
export BTCPAYGEN_CRYPTO1="btc"
export BTCPAYGEN_LIGHTNING="clightning"
export BTCPAYGEN_REVERSEPROXY="nginx"
export BTCPAYGEN_ADDITIONAL_FRAGMENTS="opt-save-storage-s"
export LETSENCRYPT_EMAIL="you@example.com"
. ./btcpay-setup.sh -i
Фрагмент opt-save-storage-s урезает блокчейн, чтобы сэкономить место на диске. Первоначальная синхронизация может занять много часов, а магазин начнёт работать со счетами, когда узел догонит сеть. Lightning необязателен, поэтому уберите эту строку, если он вам не нужен.
Шаг 3: создайте администратора и магазин
Откройте свой домен, зарегистрируйте первую учётную запись (она становится администратором сервера), затем отключите публичную регистрацию в разделе Server Settings. Создайте магазин и задайте его валюту по умолчанию.
Шаг 4: подключите кошелёк, который вы контролируете
Создайте кошелёк на аппаратном кошельке или на собственном устройстве и вставьте в BTCPay только открытый ключ (xpub). По возможности не создавайте горячий кошелёк на сервере, потому что тогда сохранность средств зависит от безопасности сервера. Платежи поступают прямо на адреса, полученные из вашего открытого ключа.
Шаг 5: протестируйте и интегрируйте
Создайте тестовый счёт и оплатите небольшую сумму. Затем установите плагин для вашего магазина (WooCommerce, Shopify, собственный API-ключ), следуя документации BTCPay.
Обеспечьте безопасность
- Включите двухфакторную аутентификацию для администратора.
- Делайте резервные копии данных BTCPay встроенным скриптом и храните их вне сервера в зашифрованном виде.
- Обновляйте с помощью
btcpay-update.sh, предварительно прочитав примечания к выпуску. - Оставьте в брандмауэре открытыми только SSH, 80 и 443.
Чтобы узнать, какая монета подойдёт вашим клиентам, прочитайте о самой дешёвой криптовалюте для платежей. Запускаете собственный узел для бэкенда? См. как запустить узел Bitcoin.