К содержимому

Интеграции · WooCommerce

Приём криптовалюты в WooCommerce

Оплата в Bitcoin, USDT (TRC20 и ERC20), Ethereum, Litecoin и TRON в магазине на WooCommerce. Блочная и классическая корзина; заказ оплачен после подтверждения.

WooCommerce

WordPress 6.1+ · WooCommerce 7.0+

  • Плагин (.zip) — Архив публикуется со следующим релизом — в инструкции описана установка из репозитория.
Настроить в кабинетеКлючи, URL вебхуков и загрузки для этой платформы — в кабинете, раздел «Интеграции».

Плагин CryptoLike добавляет в корзину WooCommerce способ оплаты «Криптовалюта» и переводит заказ в оплаченные только после подтверждения платежа в блокчейне. Покупатель платит в Bitcoin, USDT в сети TRON или Ethereum, Ethereum, Litecoin, TRON или USDC, а менеджер видит обычный статус заказа WooCommerce — сверять переводы в обозревателе блоков не нужно.

Требования

Плагин работает с WooCommerce 7.0 и новее на WordPress 6.1 и новее, PHP от 7.4 до 8.4. Поддерживаются блочное оформление заказа (Checkout Block) и классическое, а также оба хранилища заказов — HPOS и записи WordPress. Последняя полная проверка — WordPress 7.1 и WooCommerce 11.1.

Что Поддержка
WordPress 6.1 и новее
WooCommerce 7.0 и новее
PHP 7.4 – 8.4
Оформление заказа Блочное и классическое [woocommerce_checkout]
Хранилище заказов HPOS и записи WordPress
Валюта магазина USD, EUR, UAH, GBP или CAD (все пять включены для каждого аккаунта по умолчанию)
Сайт Доступен из интернета по https:// — туда приходят вебхуки

Что умеет плагин

На каждый заказ плагин создаёт один платёж CryptoLike и держит статус заказа в соответствии с ним. Каждое изменение приходит подписанным вебхуком: плагин проверяет подпись, применяет событие ровно один раз и пишет заметку к заказу — вся история платежа остаётся в самом заказе.

  • Два режима страницы оплаты. Переадресация на страницу оплаты CryptoLike или та же страница, встроенная в страницу подтверждения заказа.
  • Выбор монеты. По умолчанию покупатель выбирает монету на странице оплаты из отмеченных в Монеты к оплате (ничего не отмечено — все монеты, доступные для инвойсов). Или покупатель выбирает одну из отмеченных монет прямо в корзине.
  • Недоплата и поздний платёж. При неполной оплате заказ переходит «На удержании», а покупатель видит, сколько доплатить. Деньги, по которым нужно решение, сами в «оплачено» не попадают.
  • Один платёж на заказ. Двойной клик, перезагрузка страницы или «Оплатить заказ» позже открывают тот же платёж.
  • Секреты только на запись. После сохранения API-секрет и секрет вебхука больше не показываются.
  • Проверка раз в 15 минут. Задача WP-Cron перечитывает открытые платежи, так что заказ догонит статус, даже если вебхук не дошёл.

1. Установите плагин

Скачайте архив плагина на этой странице. В WordPress откройте Плагины → Добавить новый → Загрузить плагин, выберите zip-файл, нажмите Установить и Активировать. WooCommerce уже должен быть включён. Настройки плагина появятся в разделе WooCommerce → Настройки → Платежи → CryptoLike.

2. Подключите аккаунт CryptoLike

В кабинете CryptoLike откройте Разработчикам → API-ключи → Создать ключ и дайте ключу два права: create_invoice и read — право withdraw магазину не нужно. Вставьте ID ключа и секрет в настройки плагина: секрет кабинет показывает один раз. Затем скопируйте из настроек плагина URL вебхука (https://ваш-магазин/wp-json/cryptolike/v1/webhook), добавьте его в кабинете в Разработчикам → Вебхуки → Добавить эндпоинт, отметьте все события invoice.* и вставьте секрет эндпоинта в поле Секрет вебхука. Пока секрет вебхука не сохранён, способ оплаты в корзине не показывается.

3. Включите способ оплаты и проверьте его

Нажмите Проверить соединение — плагин ответит «Соединение установлено: доступно валют — N». Выберите режим страницы оплаты, время на оплату и статусы заказов, отметьте Включить криптоплатежи и сохраните. Перед запуском включите Тестовый режим с ключом ck_test_ и укажите тестовый адрес в поле URL API (по умолчанию там рабочий; тестовый URL даст поддержка CryptoLike). Тестовые ключи работают с тестовыми сетями, и заказ можно оплатить монетами без ценности. Плагин не примет рабочий ключ в тестовом режиме, как и тестовый — в рабочем.

Как меняется статус заказа

Каждому состоянию платежа соответствует одно состояние заказа, а конкретный статус WooCommerce вы выбираете в настройках. Более раннее состояние никогда не перезаписывает более позднее: запоздавшее событие «платёж обнаружен», пришедшее после «оплачен», ничего не меняет.

Платёж Заказ (статус по умолчанию) Что видит покупатель
Создан В ожидании оплаты «Ожидаем оплату.» и страница оплаты
Перевод обнаружен Без изменений, заметка с ID транзакции «Платёж обнаружен. Ожидаем подтверждения.»
Подтверждён Обработка (остатки, письма и дата оплаты — как обычно) «Платёж подтверждён.»
Частичная оплата до срока На удержании, заметка с недостающей суммой Сколько доплатить, на тот же адрес и до какого времени
Частичная после срока, поздний или второй платёж, отмена сетью Ваш статус проверки (На удержании) и заметка, что решить Сообщение для этого случая, например «Платёж поступил после окончания срока. Магазин проверит его и свяжется с вами.»
Время истекло Отменён или остаётся в ожидании (настройка) «Время оплаты истекло. Создайте новый платёж.»

Время на оплату берётся из настроек аккаунта (по умолчанию 30 минут), если в плагине не задано другое.

Эти правила одинаковы на всех платформах; остальные платформы для магазинов сравниваются в разделе криптовалюта для интернет-магазина.

Скриншоты

Способ «Криптовалюта» в блочном оформлении заказа WooCommerce

Если что-то не работает

Что видно Что сделать
После оплаты заказ остаётся «В ожидании оплаты» На странице настроек есть «Последний проверенный вебхук». Если там пусто, вебхук не доходит: проверьте, что магазин отвечает по https://, что плагин режима обслуживания пропускает /wp-json/cryptolike/v1/webhook, а секрет вебхука — от этого эндпоинта.
«Оплата криптовалютой недоступна для XYZ» XYZ нет среди валют, включённых для вашего аккаунта (по умолчанию USD, EUR, UAH, GBP и CAD). Переключите магазин на одну из них или напишите в поддержку.
Встроенная страница оплаты не загружается Добавьте адрес магазина в кабинете: Настройки → Интеграция → Разрешённые origin.
«Не удалось соединиться: auth.…» auth.invalid_key или auth.invalid_signature — неверный ID ключа или секрет. auth.ip_not_allowed — в белом списке IP ключа нет вашего сервера. auth.test_key — ключ ck_test_ с URL API по умолчанию: тестовому режиму нужен ещё тестовый URL API.

Журнал отладки — в WooCommerce → Статус → Журналы, источник cryptolike; секретов, подписей, тел вебхуков и данных покупателей в нём нет. При удалении плагина стираются его настройки, оба секрета, задача и таблица; заметки к заказам остаются как история платежей.

Разработчикам

Плагин следует тому же контракту, что и все плагины CryptoLike: платёж создаётся с сервера, на заказ — один открытый платёж (idempotency_by_order_id), подпись вебхука проверяется по сырому телу, события отсеиваются по event_id, а ответ 200 уходит только после записи заказа. В архиве лежит README для разработчика со структурой файлов и сборкой. Если на сайте задан DISABLE_WP_CRON, запускайте wp cron event run --due-now из системного cron, чтобы проверка раз в 15 минут продолжала работать. Та же схема без плагина — в руководстве разработчика.

Вопросы и ответы

Что будет, если покупатель заплатит меньше суммы заказа?

Платёж получает статус «недоплата», заказ переходит «На удержании» с заметкой о недостающей сумме. Покупатель видит, сколько не хватает, и может доплатить на тот же адрес до окончания срока. Успеет — заказ перейдёт в «Обработку»; нет — попадёт в ваш статус проверки, и решение за вами.

Что если покупатель заплатил после окончания срока?

Деньги зачисляются на ваш баланс CryptoLike, а заказ переходит в статус проверки, а не в «Обработку»: вы решаете, отгрузить товар или вернуть деньги. Если по истечении срока заказ оставлен в ожидании, покупатель может создать новый платёж через «Оплатить заказ».

Как вернуть деньги покупателю?

Возврат не автоматический: перевод в блокчейне нельзя отозвать. Попросите у покупателя адрес и отправьте возврат выплатой из кабинета CryptoLike. К выплате добавляются комиссия платформы и комиссия сети — обе видны в расчёте до подтверждения; тарифы — на странице тарифов.

В какой валюте можно выставлять цены?

Плагин создаёт платёж в валюте заказа (USD, EUR, UAH, GBP или CAD), а CryptoLike пересчитывает её в монету по текущему курсу и фиксирует курс до окончания срока оплаты. Валюта должна быть включена для платежей в вашем аккаунте, иначе в корзине появится «Оплата криптовалютой недоступна».

Можно ли проверить плагин без реальных денег?

Да. Включите тестовый режим, используйте ключ ck_test_ и укажите тестовый URL API — его даст поддержка CryptoLike. Тестовые ключи работают с тестовыми сетями, а тестовые монеты ничего не стоят. В корзине рядом со способом оплаты виден значок «Тестовый режим». Плагин не примет рабочий ключ в тестовом режиме, поэтому живой магазин не примет тестовый платёж по ошибке.

Какими монетами смогут платить покупатели?

Bitcoin, Litecoin, Ethereum, TRON, USDT в сетях TRON (TRC20) и Ethereum (ERC20), USDC в сети Ethereum — все активы, у которых в разделе кабинета «Монеты» включено «Для инвойсов», или только отмеченные в Монеты к оплате. Актуальный список с порогами подтверждений — на странице поддерживаемых монет; для магазинов чаще всего выбирают USDT в сети TRON.

Гайды и статьи

Термины на странице

Начните с тестового платежа

Создайте аккаунт, попросите у поддержки доступ к тестовой среде и посмотрите, как платёж проходит путь от pending до paid в тестовой сети.