Криптоплатежи в WooCommerce и настройка плагина оплаты
Пошаговая настройка приёма криптовалюты в WooCommerce — выбор криптоэквайринга, плагин, ключи, вебхук, проверка реальным платежом и заказы, зависшие в ожидании.

Чтобы подключить криптоплатежи в WooCommerce, нужно установить плагин платёжного шлюза, вставить API-ключ и секрет из кабинета мерчанта, перенести адрес вебхука из плагина в настройки магазина у шлюза и провести одну небольшую реальную оплату. Обычно это занимает 15–30 минут, и вам не придётся поднимать ноду или хранить чужие приватные ключи.
Чаще всего проблемы возникают не при установке, а после кнопки «Оформить заказ»: заказ висит в статусе «Ожидание оплаты», пока шлюз не пришлёт подписанный вебхук. Именно с этим звеном связаны почти все жалобы вида «покупатель оплатил, а заказ не изменился». Поэтому в статье есть и настройка, и разбор неполадок.
Интерфейсы плагинов и версий различаются, так что шаги ниже описаны на уровне, который справедлив для любого нормального плагина криптоэквайринга. Точные названия полей уточняйте в инструкции своего провайдера.
Как устроена оплата криптой в WooCommerce
Почти все плагины работают по одной схеме:
Покупатель оформляет заказ и выбирает «Оплатить криптовалютой».
Плагин создаёт счёт через API шлюза в валюте магазина.
WooCommerce перенаправляет покупателя на страницу оплаты шлюза: там он выбирает монету и сеть, сканирует QR-код и платит.
Шлюз ждёт нужного числа подтверждений в блокчейне.
Шлюз отправляет на сайт подписанный вебхук, и плагин отмечает заказ оплаченным.
Дальше всё как обычно: списываются остатки, уходят письма, открываются загрузки.
Счёт выставляется в фиатной валюте, а пересчёт в крипту происходит в момент оплаты, поэтому цены в каталоге остаются привычными. Каждому счёту шлюз выдаёт отдельный адрес для депозита, так что платежи сопоставляются с заказами автоматически.
Шаг 1. Выберите шлюз
Прежде чем что-то ставить, решите, куда пойдут деньги. Провайдеры различаются комиссией, набором монет и сетей, требованиями к документам и условиями вывода.
| Провайдер | Комиссия мерчанта (на октябрь 2026 года, по странице тарифов) | Примечание |
|---|---|---|
| NOWPayments | от 1% со скидками за лояльность, комиссии сети отдельно | Облачный сервис |
| CoinGate | 1% за обработку | Регулируется в ЕС, проверка бизнеса (KYB) |
| Plisio | 0,5% через API, 1,5% white label | Облачный сервис |
| Cryptomus | 2% для новых пользователей, до 0,4% по запросу | KYC обязателен примерно с марта 2025 года |
| CoinPayments | 3% с входящих платежей плюс комиссия сети | Облачный сервис |
| BTCPay Server | без комиссии за обработку | Бесплатный, но сервер разворачиваете и обслуживаете вы |
| Zypher | 1% на тарифе Start, до 0,25% при росте оборота за 30 дней | Без платы за подключение и абонентки, документы для открытия магазина не нужны |
Тарифы меняются часто, поэтому перед выбором откройте страницы цен. Если вы переезжаете с другого сервиса, подробное сравнение есть в статье аналоги Cryptomus для приёма криптоплатежей.
Отдельно подумайте о сетях. USDT в TRON, BSC или TON отправлять недорого, а в Ethereum в часы пиковой нагрузки перевод может стоить заметных денег. Включайте те сети, которыми реально пользуются ваши покупатели.
Шаг 2. Создайте магазин и получите API-ключи
В кабинете шлюза создайте магазин (у некоторых провайдеров это «проект» или «мерчант») для вашего сайта на WooCommerce. Вы получите два значения:
API-ключ — идентификатор магазина;
API-секрет — им подписываются запросы и проверяются вебхуки.
В Zypher регистрация занимает минуту — через код на почту, Telegram или passkey, а для открытия магазина и получения ключей документы не нужны. В одном аккаунте можно держать несколько магазинов, если у вас больше одного сайта.
Заодно включите в аккаунте двухфакторную аутентификацию и, если есть, белый список адресов для вывода. Баланс магазина защищён ровно настолько, насколько защищён вход в кабинет.
Шаг 3. Установите плагин
Скачайте плагин у шлюза (для Zypher — на странице плагина для WooCommerce) или установите из каталога WordPress, если провайдер там публикуется.
В WordPress откройте Плагины → Добавить новый → Загрузить плагин, выберите zip-архив и активируйте.
Обновите WooCommerce и проверьте, что версии PHP и WordPress соответствуют требованиям плагина.
Если у вас есть тестовая копия сайта, ставьте сначала туда. Только помните, что вебхук должен приходить на публично доступный адрес.
Шаг 4. Вставьте ключи и настройте вебхук
Откройте настройки шлюза в разделе WooCommerce → Настройки → Платежи. Детали у плагинов разные, но обычно нужно:
Включить способ оплаты и задать название для покупателей, например «Оплата криптовалютой (USDT, BTC, ETH и другие)».
Вставить API-ключ и API-секрет.
Скопировать адрес вебхука, который показывает плагин. В Zypher адрес вебхука берётся из плагина — его нужно вставить в поле вебхука в настройках магазина в кабинете мерчанта.
Сохранить.
В настройках магазина у шлюза полезно также задать:
адреса возврата при успехе и ошибке, чтобы покупатель возвращался на страницу «Спасибо» или в корзину;
автоконвертацию, если хотите получать всё в одной монете. В Zypher каждый входящий платёж (за вычетом комиссии) может автоматически обмениваться, например, в USDT, и после обмена курс оплаченной монеты на баланс уже не влияет;
список разрешённых IP, если у хостинга фиксированный исходящий адрес.
Шаг 5. Проверьте реальной оплатой
У одних шлюзов есть песочница, у других нет; у Zypher тестового режима нет. В любом случае лучше всего работу всей цепочки, включая вебхук, проверяет настоящая оплата на пару долларов:
Создайте скрытый дешёвый товар или временно поставьте цену $1–5.
Оформите заказ как покупатель, выберите криптовалюту и оплатите со своего кошелька в сети с низкой комиссией.
Следите за заказом: после подтверждений он должен перейти из «Ожидание оплаты» в «Обработка» (или «Выполнен» для виртуальных скачиваемых товаров).
Проверьте, что платёж появился в кабинете шлюза.
Число подтверждений зависит от сети. В Zypher, например, для TON нужно 1, для BTC 2, для BSC 5, для Ethereum 6, для TRON 10, поэтому зачисление занимает от нескольких секунд до нескольких минут.
Что покупатель видит на странице оплаты
Хорошая страница оплаты экономит обращения в поддержку. У Zypher на ней есть QR-коды, обратный отсчёт и понятные состояния для недоплаты, переплаты и истёкшего счёта, а сама страница доступна на 11 языках. Несколько правил стоит вынести в описание способа оплаты или в FAQ магазина:
Срок. В счёте с ценой в фиате на выбор монеты даётся 60 минут, затем 30 минут на оплату. Платёж, пришедший в течение 30 минут после истечения, всё ещё может быть сопоставлен со счётом.
Точная сумма. 98% суммы и больше засчитывается как оплата. Меньше — счёт получает статус UNDERPAID, и покупатель может доплатить остаток. Больше 102% — счёт помечается как переплаченный.
Комиссия биржи. Тем, кто платит с биржи, важно следить, чтобы к зачислению приходила сумма из счёта: некоторые биржи вычитают комиссию за вывод из отправляемой суммы.
Сеть. Отправлять нужно в той сети, которая указана на странице. Почему перевод в TRC20 стоит по-разному, объясняем в статье энергия TRON и комиссия USDT TRC20.
Если что-то пошло не так
Заказы висят в «Ожидании оплаты»
Почти всегда это значит, что вебхук не дошёл или был отклонён.
Проверьте адрес вебхука в настройках магазина у шлюза: он должен совпадать с тем, что показывает плагин, включая
httpsиwww.Файрволы и защитные плагины. Правила Cloudflare, Wordfence, режимы защиты от ботов или плагин режима обслуживания могут блокировать POST-запросы от шлюза. Добавьте путь вебхука в исключения.
Кеширование. Полностраничный кеш не должен затрагивать адрес вебхука.
Логи. WooCommerce хранит журналы в разделе WooCommerce → Статус → Журналы; многие плагины пишут туда при включённой отладке.
Zypher повторяет неудачную доставку, всего до 5 попыток, так что после исправления причины новые оплаты пойдут сами. По уже зависшим заказам сначала проверьте статус счёта в кабинете шлюза и только потом меняйте заказ вручную.
Ошибка «invalid signature»
Плагин считает HMAC от тела вебхука с вашим API-секретом и сравнивает с подписью из заголовка. Несовпадение значит, что в WooCommerce указан неактуальный секрет (например, вы перевыпустили ключи) или что-то между шлюзом и WordPress изменило тело запроса. Вставьте секрет заново и проверьте ещё раз.
Покупатель оплатил, а заказ на удержании или неудачный
Посмотрите счёт в кабинете. При недоплате покупатель должен доплатить остаток, а по истёкшему счёту может понадобиться новый заказ. Заранее решите, как вы действуете в таких случаях, и напишите об этом в FAQ.
Возвраты
Покупатель не может отозвать криптоплатёж, и автоматических возвратов нет. Чтобы вернуть деньги, вы отправляете монеты со своего баланса на адрес покупателя и платите комиссию сети. Адрес и сеть сначала подтвердите письменно.
Чек-лист перед запуском
Ключи вставлены, способ оплаты включён, название и описание заданы
Адрес вебхука перенесён в настройки магазина у шлюза
Тестовый заказ сам перешёл в «Обработку»
Защитные и кеширующие плагины пропускают адрес вебхука
В аккаунте шлюза включены 2FA и белый список адресов вывода
В описании оплаты есть срок, точная сумма и сеть
Записаны правила для возвратов и недоплат
Приём криптовалюты связан с вопросами учёта и налогов, которые зависят от страны. Эта статья — общая информация; уточняйте местные правила у бухгалтера или юриста.
Если хотите посмотреть шире, загляните на страницу криптоплатежи для интернет-магазинов. Когда будете готовы, создайте магазин, получите ключи и установите плагин Zypher для WooCommerce.
Частые вопросы
- Есть ли бесплатный плагин для приёма криптовалюты в WooCommerce?
Большинство плагинов криптоэквайринга устанавливаются бесплатно, а провайдер берёт комиссию с каждого платежа. У BTCPay Server нет комиссии за обработку, но он разворачивается на вашем сервере, и его обслуживание тоже на вас. Сравнивайте комиссию с платежа и поддерживаемые сети, а не цену плагина.
- Нужен ли криптокошелёк, чтобы принимать оплату в WooCommerce?
Не обязательно. При работе через облачный шлюз платежи поступают на баланс мерчанта, а выводите вы их на свой кошелёк или биржу, когда удобно. Кошелёк или аккаунт на бирже понадобится именно для вывода.
- Можно ли оставить цены в долларах или другой фиатной валюте?
Как правило, да: плагин выставляет счёт в валюте магазина, а монету покупатель выбирает на странице оплаты. Список поддерживаемых фиатных валют зависит от шлюза, поэтому уточните его до запуска. Пересчёт происходит в момент оплаты, так что крипто-цены в каталоге не нужны.
- Сколько времени подтверждается криптоплатёж?
Зависит от сети. Быстрые сети вроде TON или TRON подтверждают перевод за секунды или около минуты, а биткоину нужно два блока — обычно около 20 минут. Заказ переходит в «Обработку» автоматически, когда приходит вебхук от шлюза.
- Почему заказ с оплатой криптой завис в статусе ожидания?
Чаще всего вебхук от шлюза не дошёл до сайта или был отклонён. Проверьте, что адрес вебхука в настройках шлюза совпадает с адресом из плагина, что файрвол или защитный плагин его не блокирует и что API-секрет актуален. Затем посмотрите точную ошибку в журналах WooCommerce.
- Как не зависеть от колебаний курса?
Предлагайте покупателям стейблкоины USDT или USDC и включите автоконвертацию, если шлюз её поддерживает. Тогда каждый платёж при поступлении обменивается в выбранную монету, и баланс остаётся в нужном вам активе.