Принимайте криптоплатежи по счетам Blesta
Достаточно аккаунта Cryptonly и API-ключа. Установите плагин — и счета Blesta можно оплачивать криптовалютой. Ниже весь процесс настройки.
Как начать принимать криптоплатежи в Blesta
Зарегистрируйте аккаунт Cryptonly
Создайте мерчант-аккаунт в панели Cryptonly. Этот аккаунт выдаёт API-ключ, идентификатор аккаунта и ключ подписи вебхука, которые нужны в шагах ниже.
Создайте API-ключ
Создайте ключ в Settings → Security → API keys со скоупами accounts.list, invoices.create и invoices.list. Скопируйте идентификатор аккаунта в Accounts и ключ подписи вебхука в Settings → Security. Сохранение шлюза без этого ключа подписи блокируется.
Установите шлюз Blesta
Скачайте шлюз с маркетплейса Blesta и распакуйте архив в корень Blesta, чтобы он слился с существующей папкой components. Установите Cryptonly в Settings → Company → Payment Gateways → Available. Путь загрузки и поля шлюза описаны в руководстве по интеграции Blesta.
components/gateways/nonmerchant/cryptonly/cryptonly.phpСохраните настройки шлюза
Откройте Settings → Company → Payment Gateways → Installed, нажмите Manage рядом с Cryptonly и укажите API-ключ, идентификатор аккаунта и ключ подписи вебхука. Оставьте поле ключа пустым при следующем сохранении, чтобы сохранить записанное значение. Шлюз проверяет ключ и идентификатор аккаунта через GET /accounts, прежде чем записать их.
Принимайте оплату по счетам
Укажите публичный HTTPS-адрес сайта Blesta, чтобы Cryptonly мог доставить вебхук. Включите Cryptonly в форме заказа: Packages → Order Forms. На счёте клиент платит на hosted-странице. Подписанный вебхук invoice.statusChanged проводит зачисленную сумму или записывает частичную оплату и оставляет остаток открытым. Страница настроек показывает этот URL вебхука, и шлюз отправляет его с каждым счётом.
{siteurl}callback/gw/{company_id}/cryptonly/
Что такое Blesta
Blesta — биллинговая система для хостинг-компаний и других сервисных бизнесов. Она выставляет счета, ведёт регулярные платежи и записывает каждую оплату на аккаунт клиента.
Способ оплаты — это non-merchant шлюз. Его распаковывают в components/gateways/nonmerchant, включают в Payment Gateways, и клиент видит его при оплате счёта или оформлении заказа.
Cryptonly использует этот хук шлюза. Суммы счетов остаются в валюте биллинга. Клиент платит на странице Cryptonly, а подписанный вебхук проводит оплату в Blesta, когда средства зачисляются.
Какую криптовалюту можно принимать в Blesta с Cryptonly?
Все валютыВопросы о Blesta
Какие версии Blesta поддерживает шлюз?
Blesta 6.0 или новее на PHP 8.2, 8.3 или 8.4. Шлюз проверен на Blesta 6.0.0 и 6.0.3.
Нужно ли собирать свою страницу крипто-оплаты?
Нет. Клиент платит на hosted-странице Cryptonly и возвращается к счёту. Экран кошелька и слежение за сетью делать не нужно.
Сколько это стоит?
0,5% с каждого платежа, без платы за подключение и без ежемесячной платы.
Можно ли проверить шлюз до реальных платежей?
Да. В режиме песочницы проходят и hosted-страница, и вебхук, но только в тестнете. Песочницу выключают и переключают ключи на боевые, когда биллинг готов принимать живые платежи.
Суммы счетов должны быть в криптовалюте?
Нет. Счета остаются в валюте биллинга. Cryptonly пересчитывает сумму в момент оплаты.
Как Blesta узнаёт, что счёт оплачен?
Cryptonly отправляет подписанный вебхук invoice.statusChanged на callback/gw/{company_id}/cryptonly/. Статусы paid и overpaid проводят сумму, которая ещё должна. Переплата не зачисляется как кредит клиента. Частичная оплата проводится, а счёт остаётся открытым. Возврат со страницы оплаты не отмечает счёт оплаченным.
Принимайте криптоплатежи с Blesta и Cryptonly
Hosted checkout, подписанные вебхуки и комиссия 0,5%. Blesta сама обновляет статус счёта, а суммы остаются в фиате.