Оплата через HUMO и UZCARD
Этот модуль входит в нашу Подписку.
Оформите подписку — и пользуйтесь всеми модулями без ограничений.
Оплата через HUMO и UZCARD добавляет в CS-Cart приём платежей по банковским картам платёжных систем Узбекистана. Покупатель подтверждает операцию SMS-кодом, а магазин управляет резервированием и последующим списанием суммы заказа через стандартные статусы CS-Cart.
Для чего нужен
Модуль предназначен для магазинов, которые принимают оплату от держателей карт HUMO и UZCARD. Он подключает локальный платёжный шлюз к оформлению заказа CS-Cart и позволяет разделить оплату на два этапа: резервирование средств после SMS-подтверждения и окончательное списание при переводе заказа в выбранный статус.
Основные возможности
- Добавляет платёжный процессор «HUMO и UZCARD» для способов оплаты CS-Cart.
- Поддерживает тестовый и рабочий режимы подключения к шлюзу.
- Проверяет регистрацию терминала и позволяет зарегистрировать его из настроек способа оплаты.
- Токенизирует карту и подтверждает платёж одноразовым SMS-кодом.
- Резервирует сумму заказа на карте покупателя и списывает её при переходе заказа в настроенный статус.
- Позволяет отменить активный hold из карточки заказа до окончательного списания.
- Ведёт журнал запросов и ответов шлюза в тестовом режиме.
Как работает
Администратор создаёт способ оплаты на базе процессора HUMO и UZCARD, указывает реквизиты терминала и выбирает статусы заказа. При оплате модуль получает токен карты, показывает покупателю форму ввода SMS-кода, проверяет доступный баланс и резервирует сумму заказа.
После успешного резервирования заказ получает заданный статус. Когда заказ переводится в статус подтверждения, модуль списывает средства из hold. Пока списание не выполнено, администратор может отменить резервирование из карточки заказа.
Остались вопросы по работе модуля?
- Store Builder
- Store Builder Ultimate
- Multi-Vendor
- Multi-Vendor Plus
- Multi-Vendor Ultimate
- Владельцам
- Покупателям
- English
- Русский
- 4.21.X
- 4.20.X
- 4.19.X
- 4.18.X
- 4.17.X
- 4.16.X
- 4.15.X
- 4.14.X
- 4.13.X
- 4.12.X
Инструкция к модулю Оплата через HUMO и UZCARD
Что делает модуль
Модуль добавляет в CS-Cart платёжный процессор «HUMO и UZCARD» для приёма оплат банковскими картами платёжных систем Узбекистана. Оплата проходит через JSON-RPC шлюз QRPay: в тестовом режиме используется http://testagent.qrpay.uz/api/jsonrpc, в рабочем режиме — https://agent.qrpay.uz/api/jsonrpc.
Платёжный сценарий построен через hold: после SMS-подтверждения сумма заказа резервируется на карте покупателя, а окончательное списание выполняется при переводе заказа в настроенный статус подтверждения.
Где находится модуль
Основная настройка режима находится в карточке модуля: Модули → Управление модулями → Оплата через HUMO и UZCARD. В разделе «Общее» доступен параметр Режим теста.
Параметры подключения задаются в способе оплаты: Администрирование → Способы оплаты, процессор HUMO и UZCARD. В блоке «Настройки шлюза» заполняются реквизиты терминала и статусы заказа.
Настройки модуля
Режим теста — если включён, модуль отправляет запросы на тестовый адрес шлюза и дополнительно пишет журнал запросов и ответов. Если выключен, используются рабочие адреса QRPay.
Настройки способа оплаты
Логин и Пароль — учётные данные для Basic Auth при обращении к шлюзу.
ID терминала — идентификатор терминала, выданный платёжным провайдером.
Номер мерчанта — merchant ID магазина в платёжной системе.
Отдельные поля Client ID и API token в модуле не предусмотрены: для авторизации используются логин и пароль, а платёжные операции привязываются к ID терминала и номеру мерчанта.
Название терминала и Порт — технические параметры регистрации терминала. В интерфейсе они скрыты и по умолчанию заполняются случайным значением, если ранее не были сохранены.
Статус оплаченного заказа — статус, который получает заказ после успешной проверки SMS-кода и создания hold.
Статус подтвержденного заказа — статус, при переходе в который модуль выполняет списание средств из hold.
Статус терминала — результат проверки терминала в шлюзе. Если терминал не зарегистрирован, модуль показывает кнопку регистрации.
Регистрация и проверка терминала
После заполнения логина, пароля, ID терминала и номера мерчанта модуль автоматически проверяет терминал запросом terminal.check. Если шлюз отвечает успешно, поле статуса показывает «Зарегистрирован».
Если терминал не найден, становится доступна кнопка «Зарегистрировать». Она отправляет запрос terminal.add с данными терминала, мерчанта, порта и названия терминала.
Как проходит оплата
Покупатель выбирает способ оплаты HUMO и UZCARD и вводит данные карты. Модуль отправляет запрос на токенизацию карты и инициирует SMS-подтверждение.
После ввода SMS-кода модуль проверяет код через шлюз. При успешной проверке он получает баланс по токену карты, сравнивает его с суммой заказа и создаёт hold на сумму заказа. Сумма передаётся в тийинах — модуль умножает сумму заказа на 100.
Если hold создан успешно, заказ получает статус из настройки «Статус оплаченного заказа», а идентификатор hold сохраняется в параметрах способа оплаты.
Подтверждение списания
Когда заказ переводится в статус, выбранный в настройке «Статус подтвержденного заказа», модуль отправляет запрос hold.dismiss.charge. После успешного ответа hold удаляется из параметров оплаты, а средства считаются списанными.
Возвраты
Если у платежа есть активный hold, в карточке заказа появляется кнопка «Вернуть средства клиенту». При подтверждении модуль отправляет запрос hold.dismiss, удаляет hold из параметров оплаты, переводит заказ в статус «Отменён» и добавляет запись в журнал заказа.
Отдельного сценария возврата уже списанных средств в коде модуля не предусмотрено: кнопка работает именно с активным hold до подтверждения списания.
Webhook и callback
Внешний webhook от платёжной системы в модуле не настраивается. Callback используется внутри CS-Cart для страницы ввода SMS-кода: покупатель отправляет код на URL вида payment_notification.frame, после чего CS-Cart завершает оформление заказа.
Чеки и фискализация
В коде модуля нет отдельных настроек фискализации, 54-ФЗ или DigitalKassa. Если магазину нужны чеки, используйте отдельную фискальную интеграцию CS-Cart и проверьте требования платёжного провайдера.
Журналы и диагностика
При ошибках шлюза модуль пишет данные в файл app/addons/ms_humo_uzcard/Tygh/Addons/MsHumoUzcard/logs/error_log.txt. В тестовом режиме дополнительно пишется файл resp_req_log.txt с запросами и ответами.
Если платёж не проходит, проверьте режим работы, логин, пароль, ID терминала, номер мерчанта, статус регистрации терминала и ответ шлюза в журнале.
Как проверить работу
Включите тестовый режим, заполните реквизиты способа оплаты и убедитесь, что терминал получил статус «Зарегистрирован».
Создайте тестовый заказ и оплатите его способом HUMO и UZCARD. Проверьте, что покупателю показана форма ввода SMS-кода, после успешного ввода заказ получает выбранный статус оплаченного заказа, а в данных оплаты сохраняется transaction ID/hold ID.
Переведите заказ в статус подтверждения и убедитесь, что модуль выполнил списание из hold. Для проверки отмены создайте новый заказ с активным hold и используйте кнопку «Вернуть средства клиенту» до подтверждения списания.
История изменений
v1.3.6 30.09.2026
[*] Короткие теги v1.3.5 от 2023-02-07.
[*] Стандартизирован код модуля.
v1.3.4 от 2021-12-03
[!] Исправлены ошибки.
v1.0.3 от 2021-04-13
[+] Выпущена первая версия модуля.
Обозначения:
[+] Добавлено
[-] Удалено
[*] Изменено
[!] Исправлена ошибка
Здесь можно поделиться своим мнением и оценить нашу работу.
Ваши отзывы помогают нам стать лучше и предлагать вам еще более качественный сервис.