

Владельцы магазинов на WooCommerce обычно приходят к криптовалюте одним путём: покупатель спрашивает, можно ли заплатить в USDT, а после второго такого вопроса за месяц продавец открывает каталог плагинов. Дальше два тупика: либо под уже выбранный платёжный сервис плагина в каталоге нет, либо найденный плагин бесплатно проводит только первые продажи.
Короткий ответ: принимать криптовалюту в WooCommerce можно тремя путями, и готовый плагин из каталога не нужен ни для одного из них. Первый путь — встроенный способ оплаты, при котором деньги идут мимо магазина: он включается в настройках админки, кода не требует, покупатель видит только инструкцию, а оплату подтверждает продавец. Второй — виджет оплаты на странице сайта: в перечень способов оплаты WooCommerce он не входит и корзину не видит. Третий — собственный модуль оплаты, серверный код, который пишет разработчик, когда заказов много и сверять их руками уже нельзя. Между первым и третьим путём продавец выбирает по одному числу: сколько криптозаказов в месяц он готов подтверждать вручную. Виджет выбирают по другому признаку — по продажам без корзины.
Плагин под WooCommerce есть не у каждого платёжного сервиса, и это не признак слабого сервиса. Сама платформа криптовалюту не принимает: на странице о криптовалюте WooCommerce пишет, что криптовалютных услуг не предоставляет, и отправляет продавцов к сторонним партнёрам. Писать ли плагин, каждый из них решает сам.
Что делать, зависит от того, что вы нашли в каталоге:
Порядок выбора обратный привычному: сначала платёжный сервис по условиям, потом путь, которым он встаёт в магазин. Плагин — следствие выбора шлюза, а не его причина.
Два термина, которые каталоги плагинов смешивают, здесь различаются. Способ оплаты — это строка, которую покупатель видит при оформлении заказа. Платёжный шлюз — сервис снаружи, который проводит деньги. Плагин оплаты связывает первое со вторым.
Чтобы на странице оформления заказа появилась новая строка, для вашего магазина нужно написать серверный код. У WooCommerce для этого есть официальный класс WC_Payment_Gateway, а новый способ регистрируется фильтром woocommerce_payment_gateways. Документация WooCommerce для разработчиков рекомендует поставлять такой код отдельным плагином, а для нового блочного оформления заказа даёт отдельную инструкцию по интеграции способа оплаты. Для владельца магазина из этого следует одно: если у выбранного платёжного сервиса плагина под WooCommerce нет, этот код за вас никто не написал.
При этом у WooCommerce есть способы оплаты, за которыми никакого шлюза нет. Заказ создаётся, а деньги приходят отдельно — так работает оплата по банковским реквизитам. На этом и держится путь без кода.
Отсюда главное отличие WooCommerce от закрытых платформ: дверь на страницу оформления заказа открыта изнутри. Хостинг ваш, код ваш, механизм регистрации официальный. У Shopify та же дверь закрыта, поэтому приём криптовалюты на Shopify без доступа к странице оформления заказа устроен иначе.

Кому подходит. Магазину, где криптозаказов единицы в месяц, а разработчика нет. Для такого объёма это полноценное решение, а не временная мера.
Что понадобится. Доступ в админку WooCommerce и платёжная ссылка либо адрес кошелька — то, что покупатель увидит в инструкции к способу оплаты.
Что получится. Покупатель выбирает способ оплаты, читает инструкцию и платит отдельно. Заказ переходит в ожидание подтверждения оплаты, а продавец, увидев поступление, отмечает его оплаченным сам.
Цена. Время продавца: ручная сверка каждого заказа и пауза между заказом и отгрузкой. При пяти заказах в месяц это минуты, при пятидесяти — ежедневная работа.
Кому подходит. Тем, кто продаёт без корзины: оплата в один клик, услуга, донат, счёт на фиксированную сумму.
Что понадобится. Скрипт виджета от платёжного сервиса и человек, который правит код темы. У WordPress на своём хостинге этого достаточно; у WordPress.com есть два дополнительных условия, они разобраны ниже.
Что получится. Кнопка оплаты криптовалютой на странице сайта. В перечень способов оплаты WooCommerce она не входит.
Цена. Разовая работа человека, который правит тему, и отказ от корзины: состав заказа, доставку и промокод виджет не видит.
Кому подходит. Магазину с десятками криптозаказов в месяц, где ручная сверка стала ежедневной обязанностью.
Что понадобится. Разработчик, который напишет модуль оплаты, и платёжный сервис с API; готовый плагин из каталога не нужен.
Что получится. Криптовалюта появляется при оформлении заказа наравне с картами, а заказ становится оплаченным сам, без участия продавца.
Цена. Разовая оплата разработчика и его же участие при обновлениях платформы.
Те же три пути на любой другой площадке сравнивает статья о четырёх способах принять криптовалюту на сайте.
Этот путь строится на встроенных способах оплаты, где покупатель платит отдельно, а продавец сверяет поступление.
Платёжная ссылка удобнее адреса кошелька: она ведёт на счёт с суммой конкретного заказа, а адрес — просто строка, по которой потом придётся искать, кто из покупателей заплатил. Например, у CryptumPay счёт создаётся в консоли, а ссылка на него отправляется куда угодно, в том числе в текст инструкции. Как устроены платёжные ссылки и счета с QR-кодом, разобрано отдельно.

В админке с криптозаказами связаны три статуса WooCommerce, описанные в справке о статусах заказов. Различаются они тем, получены ли деньги и подтвердил ли их продавец, — и тем, что ему в каждом делать.
Значит, при Direct bank transfer остаток на складе уменьшается в момент заказа, до прихода денег: неоплаченный криптозаказ резервирует единицу товара, пока продавец не подтвердит оплату или не отменит заказ. Если покупатель передумал, заказ отменяется вручную — при отмене товар возвращается на склад, если включён учёт остатков.
Три встроенных способа, при которых деньги приходят мимо магазина, ведут себя по-разному, и путать их нельзя:
Для криптозаказов берут Direct bank transfer или Check payments, а статус On hold читается как «деньги ещё не подтверждены, товар уже зарезервирован».
Виджет оплаты — это сторонний скрипт на странице сайта. Настройки WooCommerce в нём не участвуют; куда его ставить, зависит от того, где развёрнут ваш WordPress, а это две разные вещи с похожим названием.
WordPress на своём хостинге. Скрипт подключается в теме функцией wp_enqueue_script на хуке wp_enqueue_scripts — так документация WordPress для разработчиков описывает подключение скриптов к теме. Отдельного разрешения площадки здесь не требуется: хостинг ваш, код темы ваш. Правку обычно делают в дочерней теме, то есть в надстройке над основной, чтобы она пережила обновление основной темы.
WordPress.com, хостинг от Automattic. Здесь два условия, и второе чаще всего упускают. Первое — платный план: по справке о плагинах установка плагинов доступна на всех платных планах, Personal, Premium, Business и Commerce; старое правило «плагины только на Business» больше не действует. Второе — hosting-функции: по справке о коде теги script, iframe, form, style и link разрешены на сайтах с планом, где доступны плагины, и с активированными hosting-функциями. Как активируются hosting-функции, эта страница не описывает, а справка о самих hosting-возможностях относит их к планам Business и Commerce, поэтому владельцу сайта на Personal или Premium стоит до заказа работы уточнить у поддержки WordPress.com, выполняется ли второе условие на его плане.
Ограничение виджета от хостинга не зависит: корзину он не видит, это инструмент для оплаты услуг, донатов и счетов на фиксированную сумму.
Например, checkout-виджет CryptumPay подключается скриптом с CDN и умеет режим свободной суммы: покупатель вводит её сам, что подходит для услуг, чаевых и донатов. Домен магазина обязан быть заранее добавлен в проект, иначе виджет не запустится. Подключение — скрипт и колбэк, то есть обработка ответа сервиса о результате оплаты; это работа для человека, который правит код темы. Чем виджет отличается от плагина и API, объясняет сравнение виджета, плагина и API.
Когда криптозаказов становится много, ручную сверку заменяет собственный модуль оплаты. Техническое задание укладывается в четыре пункта:
Больше в задании ничего не нужно: интерфейс, отчёты и уведомления в мессенджер заказываются потом, когда базовая связка проработает месяц.
Если у платёжного сервиса есть SDK, пункты 2 и 3 сокращаются. У CryptumPay готового плагина или модуля под WooCommerce нет; для разработчика есть API, и модуль обращается к нему по его документации.
Автоматизация — это ровно одно действие: когда платёжный сервис сообщил, что деньги пришли, кто-то должен сменить статус заказа. В ручном пути это делает продавец, в автоматическом — ваш сервер.

Владельцу магазина здесь нужно знать две вещи. Первая: статус заказа можно сменить снаружи запросом к REST API магазина — поле status у заказа записываемое, это стоит в описании заказов в REST API WooCommerce. Ключи для такого запроса создаются в настройках WooCommerce и должны иметь права на запись; порядок описан в справке о REST API. Вторая, и её путают чаще всего: вебхуки WooCommerce уведомляют наружу о событиях магазина, а не принимают сообщения от шлюза — так они описаны в описании вебхуков. Входящее уведомление от платёжного сервиса ловит код на вашем сервере — пункт 3 из задания.
Адрес запроса, перечень статусов, права ключей и проверка подписи — детали, которые разработчик возьмёт с этих трёх страниц сам. Вместе с четырьмя пунктами задания ему достаточно ссылок на них.
Стоимость складывается из двух частей: условий платёжного сервиса и времени продавца. Первую часть сравнивают все, вторую обычно не считают.
Условия сервиса. Различаются они сильнее, чем ставка в прайсе, и пять вопросов — ставка, минимальная сумма на вывод, период удержания средств, комиссия за вывод сверх сетевой, набор поддерживаемых сетей — стоит задать письменно до подключения и сверить ответ с первым выводом.
Для сравнения: CryptumPay берёт 1% с успешного платежа, на больших объёмах — от 0,5%, и комиссию можно переложить на покупателя. Вывод вручную из личного кабинета CryptumPay доступен в любой момент и без минимальной суммы. USDT CryptumPay принимает в нескольких сетях.
Время продавца. Считается на своих числах: время одной сверки, умноженное на число заказов в месяц, против разового счёта разработчика. Размер бизнеса и советы подборок лучших плагинов на этот расчёт не влияют.
Допустим, сверка одного заказа — найти поступление в кошельке или кабинете сервиса и перевести заказ в Processing — занимает пять минут. При пяти заказах в месяц это меньше получаса, и первый путь остаётся выгодным сколько угодно долго. При пятнадцати — чуть больше часа в месяц; это всё ещё первый путь, сверка остаётся мелкой задачей между другими делами. При пятидесяти — четыре часа в месяц, и дело уже не в часах: это заказ-два каждый день, и каждый из них ждёт отгрузки, пока продавец не найдёт поступление. Сверку нельзя отложить на конец недели, она становится ежедневным дежурством, а с ним появляется риск отгрузить неоплаченное. Здесь разовый счёт разработчика сравнивают уже не с месяцем, а с годом такой работы плюс ценой одной ошибки.
Перед первой продажей владельцу магазина нужен ответ на один вопрос: разрешено ли продавцу в его стране принимать криптовалюту как оплату за товар и как такая выручка учитывается. Ответ зависит от страны продавца и покупателя, правила различаются и меняются, поэтому проверять их нужно по нормам своей юрисдикции на дату запуска. Как эти нормы менялись по датам, показывает разбор законов о криптоплатежах для интернет-магазина: он стоит отдельным разделом в статье о полной стоимости криптоплатежа, той же, что упомянута в начале. Этот текст юридической консультацией не является.
Да. Встроенный способ оплаты Direct bank transfer создаёт заказ и ставит его в ожидание подтверждения оплаты, а деньги приходят отдельно. В инструкции для покупателя вместо банковских реквизитов указывается платёжная ссылка или адрес кошелька. Оплату продавец подтверждает вручную.
Потому что заказ с Direct bank transfer получает статус On hold, а в этом статусе по справке WooCommerce товар уже списан. Это защищает от продажи одной единицы двум покупателям, но неоплаченные заказы приходится отменять вручную.
Нет. Этот способ ставит заказ сразу в Processing, то есть в состояние «оплата получена», хотя денег ещё нет. Для криптовалюты подходят Direct bank transfer и Check payments: они держат заказ в On hold.
Да, при двух условиях из справки о коде: план, где доступны плагины, и активированные hosting-функции. На планах Personal и Premium наличие hosting-функций стоит уточнить у поддержки; у WordPress на своём хостинге таких условий нет.
Нет. Вебхуки WooCommerce уведомляют наружу о событиях магазина. Уведомление от платёжного сервиса принимает код на вашем сервере, а он уже меняет статус заказа запросом к REST API магазина.
Создайте аккаунт и подключите оплату самостоятельно, или свяжитесь с нами и мы поможем всё настроить