Криптоплатежи для Paymenter
Расширение-шлюз для Paymenter — открытой биллинг-панели для хостинга. Клиент выбирает SnapEX Pay в неоплаченном счёте и платит в USDT в TRC20, ERC20 или BEP20 или другими монетами, доступными на странице SnapEX Pay. Подписанный вебхук записывает платёж, и счёт Paymenter становится Paid.
Бесплатно. Версия 1.0.0.
Что умеет модуль
- Нативное расширение-шлюз Paymenter v1, появляется в Admin → Gateways.
- Вебхуки проверяются по HMAC-SHA256 с окном 5 минут, а перед записью платежа счёт перечитывается из API SnapEX Pay.
- Платёж записывается один раз: повторный вебхук не добавляет вторую транзакцию. Зачисляется ровно выставленная сумма в валюте счёта.
- Несколько сайтов Paymenter могут работать с одним аккаунтом SnapEX Pay; каждый сайт проводит только свои счета.
- Тестовый режим — тестовые счета без реальных денег; тестовые платежи игнорируются, пока шлюз в боевом режиме. Фиксированный курс USD для магазинов, которые выставляют счета не в USD.
Установка
- Распакуйте архив и положите его папку в Paymenter как
extensions/Gateways/SnapexPay/(внутри —SnapexPay.phpиroutes.php; имя должно совпадать с именем класса). В Docker-образе —/app/extensions/Gateways/SnapexPay. - Если шлюз не появился — выполните
composer dump-autoload -oиphp artisan optimize:clear. - В Paymenter откройте Admin → Gateways → New, выберите SnapEX Pay и вставьте API-ключ (права
invoices.read,invoices.write) из кабинета SnapEX Pay. - В кабинете добавьте вебхук
https://<ваш-paymenter>/extensions/snapexpay/webhookс событиямиinvoice.*(минимумinvoice.paid) и вставьте секретwhsec_…в Webhook secret. - Поставьте Environment =
test, оплатите счёт и подтвердите тестовый платёж на странице SnapEX Pay — счёт должен стать Paid. Затем вернитеlive.
Настройки
| API key | Кабинет SnapEX Pay → API keys, права invoices.read и invoices.write. |
|---|---|
| Webhook secret | Секрет whsec_… вебхука. Неподписанные и неверно подписанные вебхуки отклоняются. |
| Network fee paid by | merchant — клиент платит сумму счёта. customer — комиссия сети добавляется сверху. |
| Payment window, minutes | 1–1440, по умолчанию 60. |
| USD per 1 invoice currency | 1, если Paymenter выставляет счета в USD; для EUR по 1.08 USD — 1.08. |
| Environment | live или test. |
Вопросы
Шлюза нет в Admin → Gateways.
Проверьте путь extensions/Gateways/SnapexPay/SnapexPay.php (регистр важен) и права на чтение, затем выполните composer dump-autoload -o && php artisan optimize:clear.
Клиент заплатил, а счёт не оплачен.
Проверьте доставку вебхуков в кабинете SnapEX Pay. 400 invalid signature — не совпадает секрет или сбиты часы сервера; not_paid — платёж ещё не подтверждён, вебхук придёт снова.
Клиент заплатил меньше суммы счёта.
Частично оплаченные счета автоматически не зачисляются. Проверьте платёж в кабинете SnapEX Pay и добавьте транзакцию в Paymenter вручную.
Можно подключить несколько сайтов Paymenter к одному аккаунту?
Да. Каждый сайт проводит только свои счета (они помечены хешем APP_URL).
Другие интеграции
Готовы принимать крипту?
Создайте аккаунт мерчанта, получите API-ключ и подключите модуль. 1% с платежа, без абонентской платы.