# Приём криптовалюты в OpenCart 3 и 4

> Приём Bitcoin, USDT, Ethereum, Litecoin и TRON в OpenCart 3.0 и 4.0: установите расширение, вставьте ключ — статус заказа следует за статусом платежа.

Source: https://cryptolike.net/ru/integrations/opencart
Updated: 2026-10-11

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

## Требования

OpenCart 4 изменил устройство расширений, поэтому пакетов два — из одного кода. Скачайте на этой странице тот, что подходит к вашей версии.

| OpenCart | Пакет | PHP | Проверено на |
|---|---|---|---|
| 3.0.x | `cryptolike-opencart-3.0.ocmod.zip` | 7.4 и новее (3.0.3.x — только на PHP 7.4) | 3.0.5.1 |
| 4.0.x | `cryptolike.ocmod.zip` — не переименовывайте: OpenCart 4 берёт код расширения из имени файла | 8.0 – 8.2 | 4.0.2.3 |

OpenCart 4.1 — отдельная ветка, её расширение пока не поддерживает. Магазин должен отвечать из интернета по `https://`, иначе вебхуки до него не дойдут.

## Что умеет расширение

Заказ подтверждается (статус «Ожидание», списание остатков, письма OpenCart) только когда страница оплаты CryptoLike уже создана. Если API недоступен, покупатель видит «Оплата криптовалютой временно недоступна» и может выбрать другой способ. Дальше заказ меняют только проверенные вебхуки.

- **Переадресация или встроенная страница.** Покупатель уходит на страницу оплаты CryptoLike или видит её на странице статуса заказа в магазине.
- **Выбор монеты** — на странице оплаты или на шаге подтверждения. **Монеты к оплате** ограничивают оба варианта; на странице оплаты «ничего не отмечено» значит все монеты, доступные для инвойсов в вашем аккаунте.
- **Тексты для покупателя в истории заказа**, заметки для вас (ID транзакций, что решить) — только в админке, на вкладке **CryptoLike** заказа.
- **Статусы заказов на ваш выбор**, включая «Не менять» для недоплаты, проверки и истёкшего платежа.
- **Геозона и порядок сортировки** — как у любого способа оплаты OpenCart.
- **URL сверки** для cron на сервере: он перечитывает открытые платежи, если вебхук не дошёл.

## 1. Установите расширение

**OpenCart 3.0:** админка → **Расширения → Установщик** → загрузите `cryptolike-opencart-3.0.ocmod.zip` (модификаций нет, обновлять нечего) → **Расширения → Расширения → Оплата** → CryptoLike → **Установить** → **Изменить**. **OpenCart 4.0:** админка → **Расширения → Установщик** → **Загрузить** `cryptolike.ocmod.zip` → **Установить** в списке ниже → **Расширения → Расширения → Оплата** → CryptoLike → **Установить** → **Изменить**. При установке создаются таблицы расширения и, если его нет, статус заказа **On hold**.

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

В кабинете откройте **Разработчикам → API-ключи → Создать ключ** с правами `create_invoice` и `read` и вставьте ID ключа и секрет в настройки расширения — секрет показывается один раз. Скопируйте со страницы настроек **URL вебхука**, добавьте его в кабинете в **Разработчикам → Вебхуки → Добавить эндпоинт** со всеми событиями `invoice.*` и вставьте секрет эндпоинта в поле **Секрет вебхука**.

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

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

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

| Платёж | История заказа (для покупателя) | Заметка (админка, вкладка CryptoLike) |
|---|---|---|
| Перевод обнаружен | — | ID транзакции |
| Подтверждён | **Обработка** и «Платёж подтверждён.» (с уведомлением) | Сумма и ID платежа |
| Частичная оплата до срока | **On hold** и сколько доплатить, куда и до какого времени | Сколько пришло и сколько не хватает |
| Поздний платёж, недоплата после срока, второй платёж, отмена сетью, изменённая сумма заказа | **On hold** (проверка) | Что нужно решить; в «Обработку» сам не переходит |
| Время истекло | **Отменён** или без изменений (настройка) | ID платежа |

Время на оплату — из настроек аккаунта (по умолчанию 30 минут), если в расширении не задано другое. Если почта OpenCart не работает в момент вебхука, статус и текст для покупателя всё равно записываются, просто без письма: сломанный почтовый ящик не оставит оплаченный заказ неоплаченным.


Эти правила одинаковы на всех платформах; остальные платформы для магазинов сравниваются в разделе [криптовалюта для интернет-магазина](https://cryptolike.net/ru/use-cases/online-stores).
## Скриншоты

![История заказа в OpenCart 3.0 после подтверждённого криптоплатежа](https://cryptolike.net/integrations/media/opencart/oc3-2-order-history.png)

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

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

Журнал — `system/storage/logs/cryptolike.log`, в нём нет секретов, подписей, тел вебхуков и данных покупателей. При удалении расширения стираются настройки, оба секрета и его таблицы; история заказов остаётся.

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

Расширение следует общему контракту плагинов CryptoLike: платёж создаётся с сервера, на заказ — один открытый платёж (`idempotency_by_order_id`), [подпись вебхука](https://cryptolike.net/ru/docs/webhooks) проверяется по сырому телу, события отсеиваются по `event_id`, а ответ `200` уходит только после записи заказа. Языковые файлы для английского, испанского, украинского и русского и README для разработчика лежат в архиве.

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

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

Заказ переходит в On hold, а в истории заказа покупатель видит, сколько доплатить, на какой адрес и до какого времени. Заметка на вкладке CryptoLike фиксирует, сколько пришло. Доплата до срока переводит заказ в «Обработку»; после срока заказ остаётся на проверке: отгрузить, попросить доплату или вернуть деньги.

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

Деньги зачисляются на ваш баланс CryptoLike, а заказ переходит в статус проверки (On hold), но не в «Обработку». В заметке видно, сколько пришло. Вы решаете, выполнить заказ или вернуть деньги покупателю выплатой из кабинета.

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

Автоматического возврата нет, потому что перевод в блокчейне нельзя отозвать. Попросите у покупателя адрес и отправьте сумму выплатой из кабинета CryptoLike. До подтверждения расчёт покажет комиссию платформы и комиссию сети; действующие тарифы — на странице [тарифов](https://cryptolike.net/ru/pricing).

### В какой валюте магазина можно принимать оплату?

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

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

Да. Включите тестовый режим, сохраните ключ `ck_test_` и тестовый URL API, который даст поддержка CryptoLike. Тестовые ключи работают с тестовыми сетями, тестовые монеты ничего не стоят. Форма не примет рабочий ключ в тестовом режиме и тестовый — в рабочем и ничего не сохранит, так что живой магазин тестовый платёж не примет.

### Работает ли расширение с OpenCart 4.1?

Пока нет: OpenCart 4.1 — отдельная ветка со своим API расширений, а текущие пакеты рассчитаны на 3.0.x и 4.0.x. Для 4.0.0–4.0.1 расширение использует старый API способов оплаты — он реализован, но полностью проверена только версия 4.0.2.3.
