WooCommerce Exchange Quote — оплата картой (крипта LTC)
WooCommerce: оплата картой с курсом Meld (LTC), HD из Ltub, проверка оплаты
by Degree Team · github.com/propafinder/woo-exchange-quote-gateway
Install
The author publishes release zips, so WP-CLI can install straight from GitHub:
wp plugin install https://github.com/propafinder/woo-exchange-quote-gateway/releases/download/v1.0.25/woo-exchange-quote-gateway-1.0.25.zipDeclares an update source (https://github.com/propafinder/woo-exchange-quote-gateway/), so updates arrive through the plugin's own updater.
Readme
WooCommerce Exchange Quote Gateway
Репозиторий: https://github.com/propafinder/woo-exchange-quote-gateway
Обновления приходят с GitHub (WordPress 5.8+ Update URI). Чтобы выложить новую версию: увеличьте Version в главном файле плагина, закоммитьте, создайте тег v1.0.1 (или v*), запушьте тег — workflow соберёт zip и создаст релиз.
Плагин для WooCommerce: способ оплаты «картой», при котором клиент по факту платит криптой (LTC) на кошелёк магазина. Курс обмена берётся из вашего API котировок (или любого по URL). Всё в рамках плагина: HD-генератор LTC из Ltub (чистый PHP, без main.py), проверка оплаты по Chain.so/BlockCypher, обновление статуса WooCommerce после поступления средств. main.py — только образец; интеграция с ним опциональна (котировки и/или HD через API).
Возможности
- В корзине и на checkout отображается настраиваемое название способа оплаты (например «Оплата картой (курс Revolut)»).
- При выборе способа оплаты запрашивается котировка из API (GBP → LTC, карта, провайдер Revolut) и показывается сумма в GBP и эквивалент в LTC.
- После нажатия «Оформить заказ» заказ создаётся со статусом pending; клиент перенаправляется на страницу оплаты с уже подставленными суммой в GBP и адресом LTC.
- Статус заказа остаётся pending до подтверждения крипто-оплаты (вручную или через Woo crypto / webhook).
- В админке: переименование способа оплаты, LTC-адрес, логи.
Установка
- Скопируйте папку
woo-exchange-quote-gatewayвwp-content/plugins/. - В админке WordPress: Плагины → Включить «WooCommerce Exchange Quote — оплата картой (крипта LTC)».
- WooCommerce → Настройки → Платежи → включите способ «Exchange Quote» и заполните настройки.
Настройки (админка)
| Поле | Описание |
|---|---|
| Название способа оплаты | Текст в корзине и на checkout (например: «Оплата картой — курс Revolut»). |
| Токен сессии Meld | JWT из fluidmoney.xyz (Сеть → x-crypto-session-token). Котировки запрашиваются из плагина в Meld API (PHP), Python не нужен. |
| URL Meld API | Оставьте пустым для стандартного; можно подставить свой. |
| URL своего API котировок | Опционально: если не используете Meld напрямую — ваш сервис с ответом как у main.py. |
| URL страницы оплаты | Необязательно. Куда редиректить после «Оформить заказ». Плейсхолдеры: {amount_gbp}, {ltc_address}, {order_id}. Если пусто — редирект на fluidmoney.xyz. |
| HD Wallet (LTC из Ltub) | Генерировать уникальный LTC-адрес для каждого заказа из расширенного публичного ключа (Ltub). Сначала используется встроенный вывод в плагине (PHP, без внешнего API); при недоступности — опционально запрос к вашему API. |
| LTC расширенный публичный ключ (Ltub) | Публичный ключ LTC (Ltub...). Используется только при включённом HD Wallet. Можно менять в настройках. Требуется PHP bcmath или gmp. |
| LTC адрес кошелька (резерв) | Один адрес, если HD выключен и нет CryptoWoo. |
| Проверка оплаты LTC | Включить cron (каждые 5 мин): проверка поступления LTC на адрес заказа через Chain.so или BlockCypher; при поступлении суммы заказ переводится в «Оплачен», списывается товар. |
| API для проверки баланса | Chain.so или BlockCypher. |
| Учитывать неподтверждённые (0-conf) | Считать оплату полученной до подтверждения в блоке. |
| Код страны / Валюта / Крипта / Провайдер | Параметры запроса котировок. |
| Логи | Логирование в WooCommerce → Статус → Логи. |
Интеграция с CryptoWoo (CryptoWoo HD Wallet Add-on)
Адрес LTC для оплаты берётся в таком порядке:
- CryptoWoo — плагин автоматически пытается прочитать LTC-адрес из меты заказа (ключи вроде
_cryptowoo_ltc_address,_payment_address,_payment_address_ltcи др.). Если CryptoWoo или CryptoWoo HD Wallet Add-on (Cryptocurrency Payment Gateway) сохраняют адрес в заказ, он будет использован для запроса котировки в API (main.py→wallet_address) и для редиректа на страницу оплаты. - Настройка плагина — поле «LTC адрес кошелька магазина».
- Фильтр
woo_exchange_quote_ltc_address— для кастомной логики.
Перед получением адреса вызывается хук woo_exchange_quote_before_get_ltc_address, чтобы другой плагин успел записать адрес в мету заказа (например, сгенерировать его через CryptoWoo HD Wallet).
Пример: если CryptoWoo сохраняет адрес в свой ключ, можно подставить его через фильтр:
add_filter('woo_exchange_quote_ltc_address', function ($address, $order_id, $order) {
$from_cw = $order->get_meta('_cryptowoo_ltc_address'); // или ваш meta key от CryptoWoo
return is_string($from_cw) && $from_cw !== '' ? $from_cw : $address;
}, 10, 3);
Полученный адрес передаётся в API котировок (endpoint в main.py) в поле wallet_address и в URL страницы оплаты, чтобы у клиента был уже подставлен нужный адрес.
Подробно о том, как CryptoWoo проверяет, получил ли данный адрес LTC (блок-эксплореры, cron, что делать для заказов нашего шлюза), см. docs/PAYMENT_VERIFICATION.md.
Страница оплаты (pay.html)
В проекте Exchange Quote API в static/pay.html лежит готовая страница. Параметры URL:
amountилиamount_gbp— сумма в GBP.addressилиltc_address— адрес LTC.order_id— номер заказа (опционально).
Пример URL для настройки «URL страницы оплаты» (если API отдаёт static по /static/):
https://your-api.com/static/pay.html?amount_gbp={amount_gbp}&address={ltc_address}&order_id={order_id}
На странице отображаются сумма и адрес, кнопка ведёт на fluidmoney.xyz с теми же параметрами.
Требования
- WordPress 5.8+
- WooCommerce 5.0+
- PHP 7.4+
- Для HD-вывода LTC в плагине: расширение bcmath или gmp
- Котировки: задайте токен Meld (рекомендуется) — запросы идут из плагина в Meld API на PHP; либо URL своего API (без Python).
Read the full README on GitHub →
Releases
| Tag | Published | Asset | Downloads |
|---|---|---|---|
| v1.0.25 | Mar 7, 2026 | woo-exchange-quote-gateway-1.0.25.zip | 0 |
| v1.0.24 | Mar 7, 2026 | woo-exchange-quote-gateway-1.0.24.zip | 0 |
| v1.0.23 | Mar 7, 2026 | woo-exchange-quote-gateway-1.0.23.zip | 1 |
| v1.0.22 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.22.zip | 1 |
| v1.0.21 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.21.zip | 2 |
| v1.0.20 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.20.zip | 0 |
| v1.0.19 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.19.zip | 0 |
| v1.0.18 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.18.zip | 1 |
| v1.0.17 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.17.zip | 1 |
| v1.0.16 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.16.zip | 0 |
| v1.0.15 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.15.zip | 6 |
| v1.0.14 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.14.zip | 1 |
| v1.0.13 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.13.zip | 1 |
| v1.0.12 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.12.zip | 1 |
| v1.0.11 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.11.zip | 0 |
| v1.0.10 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.10.zip | 0 |
| v1.0.9 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.9.zip | 2 |
| v1.0.8 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.8.zip | 0 |
| v1.0.7 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.7.zip | 1 |
| v1.0.6 | Mar 6, 2026 | woo-exchange-quote-gateway-1.0.6.zip | 2 |
| v1.0.5 | Mar 6, 2026 | woo-exchange-quote-gateway.zip | 2 |
| v1.0.4 | Mar 5, 2026 | woo-exchange-quote-gateway.zip | 2 |
| v1.0.3 | Mar 5, 2026 | woo-exchange-quote-gateway.zip | 0 |
| v1.0.2 | Mar 5, 2026 | woo-exchange-quote-gateway.zip | 0 |
| v1.0.0 | Mar 5, 2026 | woo-exchange-quote-gateway.zip | 0 |