# Приём криптовалюты в интернет-магазине

> Оплата криптовалютой в WooCommerce, OpenCart, PrestaShop, Magento и Хорошоп: заказ сам меняет статус, когда платёж подтверждён. Bitcoin, USDT и другие активы.

Source: https://cryptolike.net/ru/use-cases/online-stores
Updated: 2026-10-11

CryptoLike превращает криптоплатёж в статус заказа. Покупатель выбирает оплату криптовалютой, платит на странице оплаты, и после подтверждения платежа заказ переходит в выбранный вами статус. Так это работает в WooCommerce, OpenCart, PrestaShop, Magento 2, Хорошоп и на собственном сайте через API.

## Почему криптовалюту сложно связать с заказами магазина?

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

Типичные ситуации: частичная оплата, потому что кошелёк вычел свою комиссию из суммы; оплата после срока; переплата; перевод, отменённый реорганизацией сети; двойной клик, который пытается создать второй платёж.

## Как CryptoLike связывает платежи и заказы

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

1. **Заказ оформлен** в статусе «ожидает оплаты», и плагин создаёт платёж на сумму заказа в его валюте (USD, EUR, UAH, GBP или CAD, все включены по умолчанию).
2. **Покупатель платит** на странице оплаты: актив и сеть, сумма, адрес с QR-кодом, оставшееся время и живой статус. Если плагин не фиксирует монету, покупатель сначала выбирает одну из монет, доступных для инвойсов, и у каждой видит ориентировочную сумму со знаком ≈; список монет в плагине может сузить выбор, а у иконок USDT и USDC есть значок их сети. С [виджетом оплаты](https://cryptolike.net/ru/docs/widget) та же страница открывается внутри вашего checkout.
3. **Приходит вебхук.** Плагин проверяет подпись, применяет событие один раз по `event_id` и отвечает `200` только после того, как статус заказа записан.

## Какой статус платежа становится каким статусом заказа?

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

| Платёж | Заказ |
|---|---|
| `pending` | Ждёт; покупатель видит «Платёж обнаружен. Ожидаем подтверждения.» |
| `paid` | Ваш статус оплаты (по умолчанию Processing в WooCommerce и OpenCart) |
| `underpaid` до срока | На удержании; покупатель доплачивает на тот же адрес |
| `underpaid` после срока | Проверка: отправить, попросить доплату или вернуть деньги |
| `expired` | Отменён или остаётся в ожидании — по вашему выбору |
| Оплата после срока | Проверка; деньги уже на вашем балансе |
| Отмена сетью после `paid` | Проверка: не отправлять товар |

## Какие платформы поддерживает CryptoLike?

У CryptoLike есть плагины для четырёх CMS и подключение для Хорошоп без плагина, а магазины на своём коде используют REST API или SDK. Во всех вариантах одна и та же страница оплаты, одни и те же статусы и вебхуки. Версии в таблице — те, что указаны в документации каждого плагина.

| Платформа | Версии | Как подключается |
|---|---|---|
| [Плагин WooCommerce](https://cryptolike.net/ru/integrations/woocommerce) | WooCommerce 7.0+, WordPress 6.1+, PHP 7.4–8.4; блочный и классический checkout | Плагин |
| [Модуль OpenCart](https://cryptolike.net/ru/integrations/opencart) | 3.0.x и 4.0.x | Расширение |
| [Модуль PrestaShop](https://cryptolike.net/ru/integrations/prestashop) | 8.x; заявленный минимум 1.7.8 | Модуль |
| [Модуль Magento 2](https://cryptolike.net/ru/integrations/magento) | 2.4.6+, PHP 8.1–8.4, checkout Luma | Модуль |
| [Подключение Хорошоп](https://cryptolike.net/ru/integrations/horoshop) | Тарифы с доступом к API | Без плагина; ссылка на оплату приходит покупателю письмом |
| Свой сайт | [REST API](https://cryptolike.net/ru/docs/api) и [SDK](https://cryptolike.net/ru/docs/sdk) | Ваш код |

## Как подключить магазин

Подключение магазина на CMS к CryptoLike — это пять шагов без разработчика. Тестовому режиму нужны ключ `ck_test_` и тестовый URL API в настройках плагина (по умолчанию там рабочий; тестовый URL даст поддержка CryptoLike); тестовые ключи работают с тестовыми сетями. Плагин не примет ключ, префикс которого не совпадает с режимом, поэтому боевой магазин не сможет по ошибке принять тестовый платёж.

1. Скачайте архив на странице интеграции и загрузите его в админке магазина.
2. Попросите у поддержки CryptoLike доступ к тестовой среде и в её кабинете создайте ключ `ck_test_` с правами `create_invoice` и `read`.
3. Вставьте ID ключа и секрет (в тестовом режиме — и тестовый URL API) в настройки плагина и нажмите «Проверить соединение».
4. Добавьте webhook URL плагина как эндпоинт в том же кабинете со всеми событиями `invoice.*` и вставьте его секрет в плагин.
5. Оформите тестовый заказ, оплатите его в тестовой сети а затем повторите шаги 2–4 в своём кабинете с боевым ключом и URL API по умолчанию.

Подробнее: руководство [как принимать криптовалюту на сайте](https://cryptolike.net/ru/guides/accept-crypto-payments), [поддерживаемые монеты](https://cryptolike.net/ru/coins) и комиссия платформы на [странице тарифов](https://cryptolike.net/ru/pricing).

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

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

Платёж переходит в `underpaid`, заказ — на удержание. Покупатель видит недостающую сумму и может доплатить на тот же адрес до конца срока. Если остаток пришёл вовремя, заказ становится оплаченным, если нет — уходит на проверку, и решение за вами.

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

CryptoLike всё равно зачисляет деньги на ваш баланс и отправляет `invoice.late_payment`. Плагин переводит заказ на проверку, а не в «оплачен»: вы решаете, выполнить заказ или вернуть деньги.

### Может ли двойной клик создать два платежа на один заказ?

Нет. Плагины создают платежи с `idempotency_by_order_id`, поэтому повторный запрос по тому же заказу возвращает его открытый платёж, а не новый. Перезагрузка страницы, двойной клик или «Оплатить заказ» позже открывают ту же страницу оплаты, а заказ, по которому деньги уже пришли, новый платёж не получит.
