VibeFox PayU India for OpenCart — Помощь
Требования
OpenCart: 3.0.x (проверено на 3.0.5.0) или 4.0.2 и новее (проверено на 4.1.0.3).
PHP: 8.0 или новее.
Валюта: индийская рупия (INR). PayU India принимает платежи только в рупиях. Вашему магазину нужна валюта INR (System > Localisation > Currencies). Для заказов в других валютах способ оплаты при оформлении заказа скрывается.
Номер телефона: PayU требует номер телефона для каждого платежа. Оставьте поле Telephone в оформлении заказа, чтобы у заказа он был. На OpenCart 4 оформление заказа по умолчанию не запрашивает телефон: если в заказе нет номера телефона, расширение показывает собственное поле Phone на шаге подтверждения (см. Оформление заказа).
Учётная запись PayU India: нужны Merchant Key и Merchant Salt (v1) из раздела PayU Dashboard > Payment Gateway > Key Salt Details. Переключите панель в Test Mode, чтобы увидеть тестовую пару. Используйте Salt v1, а не Salt v2.
Доступ к интернету для вашего магазина: нужен для необязательного вебхука. Без него заказы подтверждаются, когда покупатель возвращается из PayU.
Лицензионный ключ VibeFox: приобретается на vibefox.net. Один ключ работает для одного домена.
Установка
Загружаемый файл — один zip-архив с пакетами для обеих версий OpenCart. Распакуйте его на своём компьютере. В нём находятся README.txt, пакет для OpenCart 3 wcp_payu_india_payment-oc3-(version).ocmod.zip и пакет для OpenCart 4 wcp_payu_india_payment.ocmod.zip. Устанавливайте только пакет для своей версии OpenCart. Лицензионный ключ один и тот же для обеих версий.
OpenCart 3
1. В административной части откройте Extensions > Installer, нажмите Upload и выберите файл wcp_payu_india_payment-oc3-(version).ocmod.zip. Расширение не содержит модификаций OCMOD, поэтому обновлять Extensions > Modifications не нужно. Вместо установщика можно скопировать содержимое папки upload этого пакета в корневую папку вашего магазина.
2. Перейдите в Extensions > Extensions и выберите тип Payments. Найдите VibeFox PayU India Payment Gateway и нажмите Install (зелёная кнопка +). Вашему администратору нужно право изменять список платёжных расширений.
3. Нажмите Edit (кнопка с карандашом), чтобы открыть страницу настроек. Вставьте лицензионный ключ VibeFox в поле License key в блоке лицензии вверху страницы и нажмите Activate (см. Лицензионный ключ).
4. Введите тестовые Merchant Key и Salt и боевые Merchant Key и Salt (см. Настройка).
5. Рекомендуется: в PayU Dashboard > Webhooks добавьте URL вебхука, который показан на странице настроек, для успешных и неуспешных платежей.
6. Выберите Mode, включите Enable/Disable и нажмите Save. Проверьте платёж в режиме Test, затем переключитесь на Live.
OpenCart 4
1. В административной части перейдите в Extensions > Installer, нажмите Upload и выберите файл wcp_payu_india_payment.ocmod.zip. Не переименовывайте файл: OpenCart 4 берёт код расширения из имени файла, а переименованный пакет не работает.
2. Пакет появится в списке установленных расширений на той же странице. Нажмите рядом с ним Install (зелёная кнопка +).
3. Перейдите в Extensions > Extensions и выберите тип Payments. Найдите VibeFox PayU India Payment Gateway, нажмите Install (зелёная кнопка +), затем Edit (кнопка с карандашом).
4. Введите лицензионный ключ, учётные данные PayU и вебхук так же, как в шагах 3–6 для OpenCart 3. Страница настроек и её поля одинаковы в обеих версиях. Отличаются только URL возврата и вебхука (см. URL возврата и вебхука).
После установки способ оплаты по умолчанию выключен, а выбран режим Test.
Настройка
Все настройки находятся на странице расширения: Extensions > Extensions > Payments > VibeFox PayU India Payment Gateway > Edit. Разделы перечислены слева; кнопка Save под списком сохраняет всю страницу. Над настройками страница предупреждает вас, когда отсутствует ключ или соль текущего режима, показывает в режиме Test сообщение Тестовый режим активен: платежи направляются на test.payu.in, и реальные деньги не списываются., а при валюте магазина по умолчанию, отличной от INR, показывает ошибку: тогда шлюз показывается при оформлении заказа только если покупатель платит в INR. Без права изменять расширение страница показывает настройки, но не может их сохранить.
При сохранении Title не может быть пустым или длиннее 128 символов, Sort Order должен быть целым числом (отрицательные числа допустимы), Total должен быть числом, не меньше 0, а геозона и статусы заказов должны существовать; иначе ничего не сохраняется. Пробелы и переносы строк удаляются из ключей и солей, потому что соль с вставленным пробелом приведёт к тому, что каждый ответ PayU не пройдёт проверку. Если способ оплаты включён без ключа и соли текущего режима, страница предупредит вас после сохранения.
PayU India
Раздел начинается с короткой заметки: карты, NetBanking, UPI и кошельки на размещённой странице оплаты PayU; результаты принимаются только при правильной подписи PayU; только рупии.
Enable/Disable: Enable PayU India Payment Gateway включает или выключает способ оплаты. По умолчанию: выключено.
Title: название способа оплаты, которое видит покупатель при оформлении заказа. Оно также сохраняется в заказе как название способа оплаты. По умолчанию: PayU India. Обязательно, не более 128 символов.
Description: текст, который покупатель видит на шаге Confirm Order над кнопкой подтверждения. По умолчанию: Pay securely via Credit/Debit Card, NetBanking, UPI, or Wallets through PayU.
Sort Order: положение PayU India среди способов оплаты при оформлении заказа. Оставьте поле пустым или введите целое число.
Geo Zone: предлагать PayU India только для платёжных адресов в выбранной геозоне. По умолчанию: All zones. Геозоны настраиваются в System > Localisation > Geo Zones.
Total: сумма заказа при оформлении в валюте магазина по умолчанию, которую должен достичь заказ, прежде чем будет предложен PayU India. Оставьте поле пустым, чтобы предлагать PayU India при любой сумме.
Учётные данные API
Скопируйте Merchant Key и Merchant Salt (v1) из раздела PayU Dashboard > Payment Gateway > Key Salt Details. Переключите панель в Test Mode, чтобы получить тестовую пару. В разделе есть ссылка Open the PayU Dashboard.
Mode: среда PayU, которую используют новые платежи.
Уже начатые платежи сохраняют режим, в котором были начаты: их результаты проверяются, а возвраты отправляются с ключом и солью этого режима, даже после переключения режима.
Live Merchant Key: ваш боевой Merchant Key PayU.
Live Merchant Salt (v1): ваш боевой Merchant Salt (v1) PayU. Он подписывает запросы и проверяет ответы PayU. Храните его в секрете.
Test Merchant Key: ваш тестовый Merchant Key PayU, используется только в режиме Test.
Test Merchant Salt (v1): ваш тестовый Merchant Salt (v1) PayU, используется только в режиме Test.
Сохранённые соли никогда не показываются. Поле остаётся пустым и показывает Сохранено — оставьте пустым, чтобы не менять. Вводите новое значение, только если хотите его изменить. Чтобы удалить сохранённую соль, отметьте под полем Clear the saved salt on save и нажмите Save.
URL возврата и вебхука
Return URL: в OpenCart 3 выглядит так: https://your-store/index.php?route=extension/payment/wcp_payu_india_payment/back, в OpenCart 4 — https://your-store/index.php?route=extension/wcp_payu_india_payment/payment/wcp_payu_india_payment.back. Он автоматически передаётся в PayU при каждом платеже; ничего настраивать не нужно.
Webhook URL: в OpenCart 3 выглядит так: https://your-store/index.php?route=extension/payment/wcp_payu_india_payment/webhook, в OpenCart 4 — https://your-store/index.php?route=extension/wcp_payu_india_payment/payment/wcp_payu_india_payment.webhook. Необязателен, но рекомендуется: подтверждает платежи, даже если покупатель закрыл браузер до возврата. Добавьте его в PayU Dashboard > Webhooks для успешных и неуспешных платежей. Скопируйте URL точно так, как он показан на странице настроек. Он должен быть доступен из интернета (без базовой аутентификации и без блокировки брандмауэром). Режим обслуживания магазина его не блокирует.
Вебхук передаёт тот же подписанный результат, что и возврат покупателя. Вебхуки без правильного хеша PayU отклоняются.
Заказы
OpenCart создаёт заказ на шаге Confirm Order без статуса (отсутствующий заказ). Заказ получает статус только после того, как PayU отправит правильно подписанный результат. Неуспешный или отменённый платёж оставляет заказ без статуса, и покупатель возвращается к оформлению заказа с сохранённой корзиной. Каждое поле ниже перечисляет ваши статусы заказов OpenCart.
Order Status After Payment: успешный платёж с ожидаемой суммой в INR, подтверждённый verify_payment, когда включён Verify Payment. По умолчанию: Processing.
Awaiting PayU Payment Status: PayU сообщает, что платёж ожидает (UPI collect, NetBanking в процессе). Заказ получает статус после оплаты, когда PayU её подтверждает. По умолчанию: Pending.
On Hold (Review) Status: PayU сообщил об успешном платеже, который требует ручной проверки (см. Статусы заказа). По умолчанию: Pending, так как в OpenCart нет статуса On hold. Вы можете создать свой статус в System > Localisation > Order Statuses и выбрать его здесь.
Payment Error Status: ожидающий платёж, который PayU затем сообщил как неуспешный. По умолчанию: Failed.
Refunded Status: устанавливается, когда всё оплаченное возвращено со страницы заказа. По умолчанию: Refunded.
Cancelled Order Status: статус, который ваш магазин использует для отменённых заказов. Платёж, полученный для такого заказа, переводит его на проверку вместо отметки как оплаченного. Расширение никогда не устанавливает этот статус. По умолчанию: Canceled.
Дополнительно
Verify Payment: дополнительно проверяет каждый успешный платёж через API verify_payment PayU. Рекомендуется. Если проверку выполнить не удалось, заказ переводится на проверку, а не отмечается оплаченным. По умолчанию: включено.
Enable Logging: записывает события шлюза для устранения неполадок в payu_p_debug.log.php в папке журналов OpenCart (storage/logs). Файл нельзя открыть через веб. Ошибки и предупреждения записываются всегда; эта опция добавляет остальные события, например каждую форму платежа и каждый результат PayU. Ключи, соли и персональные данные покупателей никогда не записываются. По умолчанию: выключено.
Log: показывает размер и последние записи журнала. Нажмите Clear log, чтобы очистить его.
Delete data on uninstall: удаляет настройки шлюза и журнал при удалении расширения. Заказы и записи о транзакциях PayU никогда не удаляются. По умолчанию: выключено.
Импорт / экспорт
Export: Download JSON сохраняет настройки в файл JSON. Соли не экспортируются.
Import: вставьте ранее экспортированный JSON и нажмите Import, чтобы восстановить настройки. Сохранённые соли остаются.
Оформление заказа
На шаге Payment Method покупатель выбирает способ оплаты (по умолчанию PayU India). На шаге Confirm Order покупатель видит ваше описание; OpenCart создаёт заказ на этом шаге, по-прежнему без статуса. В OpenCart 4 покупатель выбирает способ оплаты кнопкой Choose в блоке способов оплаты, в окне Payment method options, и нажимает Confirm Order внизу страницы оформления заказа. Если в заказе нет номера телефона, блок подтверждения OpenCart 4 также показывает поле Phone с подсказкой PayU India требует номер телефона плательщика. Номер, введённый туда, передаётся в PayU и сохраняется для следующей попытки; телефон из заказа имеет приоритет. Когда покупатель нажимает Confirm Order, расширение проверяет валюту, учётные данные текущего режима и номер телефона заказа. Без номера телефона покупатель остаётся на шаге с сообщением PayU India требует номер телефона. Введите номер телефона и попробуйте снова. В остальных случаях расширение формирует подписанный запрос на оплату суммы заказа в INR, и браузер сразу отправляет его на размещённую страницу оплаты PayU. На странице отображается Вы будете перенаправлены на PayU для завершения оплаты. и кнопка Pay with PayU на случай, если браузер не продолжит переход сам. На странице PayU покупатель платит картой, NetBanking, UPI или кошельком.
Каждое нажатие Confirm Order запускает новую попытку с собственным идентификатором транзакции PayU (txnid), который начинается с номера заказа и сохраняется вместе с суммой и режимом. OpenCart 3 создаёт новый заказ каждый раз, когда показывается шаг Confirm Order, OpenCart 4 обновляет заказ оформления, поэтому там новая попытка оплачивает тот же заказ. Платёж, сделанный на более ранней, ещё открытой странице оплаты того же заказа, по-прежнему принимается. Если другой заказ той же корзины уже оплачен, ожидает PayU или находится на проверке, покупатель сразу попадает на страницу успеха, и новая форма оплаты не создаётся. Изменение корзины, в том числе новое количество, считается новой корзиной, которой нужна собственная оплата.
PayU возвращает результат вместе с покупателем и, если настроено, через вебхук. Результат принимается только при правильном хеше PayU, созданном ключом и солью режима, в котором был начат платёж, и только для идентификатора транзакции, выданного для этого заказа. Когда включён Verify Payment, успешный результат дополнительно проверяется через API verify_payment PayU. Оплаченная сумма должна точно совпадать с суммой попытки и суммой заказа, вплоть до последней копейки (пайсы), в INR. Заказ отмечается оплаченным только после того, как PayU подтвердит это таким образом, и затем получает статус стандартным для OpenCart способом, с обычными письмами о заказе и обновлением остатков. Расширение обрабатывает эти результаты PayU:
После успешного или ожидающего платежа покупатель видит страницу успешного оформления заказа OpenCart. Ожидающий платёж добавляет Ваш платёж PayU ожидает обработки. Заказ будет обновлён, как только PayU подтвердит результат, — повторно платить не нужно., заказ на проверке добавляет Ваш платёж проходит проверку. Мы свяжемся с вами, если потребуется что-то ещё., а неоплаченный заказ в статусе ошибки платежа или отменённый показывает Ваш платёж PayU не был завершён. Пожалуйста, свяжитесь с нами по поводу этого заказа.
После неуспешного платежа покупатель возвращается к оформлению заказа с сообщением: Платёж не был завершён. Попробуйте снова или выберите другой способ оплаты., Платёж был отменён. Вы можете попробовать снова. или, когда результат не удалось проверить, Нам не удалось подтвердить результат платежа. Если с вашего счёта были списаны деньги, свяжитесь с нами, прежде чем платить снова. Если результат ещё обрабатывается, когда покупатель возвращается, страница показывает Мы подтверждаем ваш платёж PayU. Если вы завершили оплату, заказ скоро обновится — пожалуйста, не платите повторно. с кнопками Check again и Back to checkout. В OpenCart 4 эти сообщения показываются над страницей оформления заказа.
В OpenCart 4 заказ остаётся в оформлении, пока не будет показана страница успеха. Если этот заказ был закрыт без оплаты (например, его ожидающий платёж не прошёл или вы его отменили), покупатель возвращается к оформлению заказа с сообщением Ваш предыдущий заказ был отменён или его платёж не прошёл. Подтвердите заказ ещё раз. Если заказ был оплачен, а затем отменён или возвращён магазином, сообщение: Ваш предыдущий заказ был отменён или возвращён магазином. Подтвердите заказ ещё раз, чтобы оплатить новым заказом. Если он был оплачен за предыдущую корзину, а корзина с тех пор изменилась, сообщение: Ваш предыдущий заказ уже оплачен. Корзина изменилась — подтвердите заказ ещё раз, чтобы оплатить текущую корзину. Следующее нажатие Confirm Order оплачивает новый заказ. Закрытый заказ никогда не показывается как оплаченный.
Вебхук работает и тогда, когда магазин находится в режиме обслуживания, потому что OpenCart пропускает запросы платёжных расширений (в OpenCart 4 расширение добавляет для этого собственное стартовое действие, которое также пропускает возврат покупателя из PayU).
Расширение принимает платежи только в INR и не поддерживает мультивалютную обработку (MCP). Оно не имеет сохранённых карт и токенизации, подписок, встроенной (seamless) формы карты на сайте, управления EMI и предложениями, а также оплаты в один клик PayU.
Заказы и возвраты
Статусы заказа
Нет статуса (отсутствующий заказ): покупатель был отправлен в PayU и не оплатил, либо платёж не прошёл или был отменён. В Sales > Orders такие заказы показываются только с фильтром Order Status, установленным на Missing Orders.
Order Status After Payment (по умолчанию Processing): платёж подтверждён. Примечание показывает PayU payment successful. Transaction ID: …, Mode: …, Bank: …
Awaiting PayU Payment Status (по умолчанию Pending): платёж UPI или NetBanking ещё ожидает в PayU. Заказ получает статус оплаты, когда PayU его подтверждает.
On Hold (Review) Status (по умолчанию Pending): оплаченная сумма или валюта отличается от заказа, API verify_payment не удалось вызвать или он ещё не подтвердил платёж, либо платёж поступил для заказа в статусе Cancelled Order Status. Примечание называет причину. Проверьте транзакцию в PayU Dashboard, затем установите статус оплаты или отмените заказ и сделайте возврат платежа. Если не прошла только проверка, заказ будет оплачен автоматически при следующей доставке результата.
Payment Error Status (по умолчанию Failed): ожидающий платёж позже был отклонён или отменён. Последующий успешный результат всё же оплачивает заказ.
Refunded Status (по умолчанию Refunded): всё оплаченное возвращено через расширение.
Если PayU сообщает о ещё одном успешном платеже для уже оплаченного заказа, заказ не меняется, а примечание просит вас вернуть дубликат в PayU Dashboard. Платёж за другой заказ той же корзины, которая уже оплачена, оставляет этот заказ без статуса, с примечанием к оплаченному заказу. Платёж PayU за заказ, переведённый на другой способ оплаты, получает только примечание.
Примечания — это записи в History заказа, которые покупатель не видит.
Вкладка VibeFox PayU India Payment Gateway
В Sales > Orders откройте заказ, оплаченный через PayU India. Внизу страницы заказа, рядом с History и Additional, вкладка VibeFox PayU India Payment Gateway показывает PayU transaction ID (mihpayid), Store transaction ID (txnid), Environment с меткой Test mode для тестовых платежей, Status PayU, Mode / bank платежа, суммы Paid / refund requested (INR), форму возврата, историю возвратов и PayU notes заказа. Для заказа на проверке показывается напоминание проверить платёж. Вкладка показывается пользователям, имеющим доступ к расширению.
Возвраты
На вкладке VibeFox PayU India Payment Gateway введите Amount (подставляется сумма, которая ещё не возвращена), при желании Reason (optional), и нажмите Refund via PayU. Подтвердите вопрос Refund this amount through PayU? This cannot be undone. Поддерживаются полные и частичные возвраты; сумма должна быть больше нуля и не превышать остаток платежа PayU, который ещё можно вернуть. Нужно право изменять расширение (настраивается в System > Users > User Groups). Возврат отправляется через API возвратов PayU с ключом и солью режима, в котором прошёл платёж, поэтому эти данные должны быть заполнены. По одному заказу одновременно выполняется только один запрос к PayU. Если PayU отклоняет возврат, вкладка показывает PayU refund failed: с сообщением PayU, и возврат не регистрируется.
PayU ставит возвраты в очередь и выполняет их асинхронно; покупатель обычно получает деньги в течение 5–7 рабочих дней. История возвратов и примечания показывают сумму, идентификатор запроса PayU и причину. Полный возврат устанавливает статус заказа Refunded Status без уведомления покупателя и без возврата товаров на склад, как и при ручной смене статуса. Частичный возврат статус не меняет. Возвраты доступны, когда PayU сообщил идентификатор транзакции платежа. Расширение позже не проверяет статус возврата.
Возвраты товаров в Sales > Returns не возвращают деньги через PayU. Возвраты, сделанные в PayU Dashboard, в OpenCart не синхронизируются.
Лицензионный ключ
Расширение работает с лицензионным ключом VibeFox с сайта vibefox.net. Блок лицензии License — VibeFox PayU India Payment Gateway — первый блок на странице Extensions > Extensions > Payments > VibeFox PayU India Payment Gateway > Edit, над настройками. Вставьте ключ в поле License key и нажмите Activate. После этого блок показывает ключ в замаскированном виде, статус (например, дату, до которой действует лицензия, и ваш домен), а также кнопки Check now для повторной проверки статуса, Change key для ввода другого ключа и Remove key для удаления ключа из этого магазина. Ниже находятся строка Product: opencart-payment-payu-india и ссылка Manage licenses and domains in your account, которая открывает ваш аккаунт на vibefox.net. Изменять ключ могут только администраторы с правом Modify для расширения. Тексты блока следуют языку административной части (включены английский и русский).
Если ключ не принят, блок сообщает причину, например Key not found, This key belongs to another product, Domain limit reached или License expired on с датой. После смены адреса магазина или после освобождения места для домена в вашем аккаунте нажмите Check now. Если сервер лицензий недоступен, расширение продолжает работать по последнему известному статусу.
Один ключ работает для одного домена: адреса магазина из настроек OpenCart. Удаление ключа из магазина не освобождает место для домена. Освободите его в своём аккаунте на vibefox.net.
Без активного ключа PayU India не показывается покупателям при оформлении заказа. Если платёж всё же начат, покупатель видит This payment method is not available. Please choose another one. Администратор, вошедший в административную часть в том же браузере, по-прежнему видит способ оплаты в магазине, помеченный (unlicensed — visible to admins only), чтобы вы могли настроить и проверить расширение до покупки ключа. В OpenCart 4 этот предпросмотр недоступен: магазин не видит вход администратора, поэтому без активного ключа способ оплаты скрыт для всех. После однократного открытия страницы Edit на административной Dashboard появляется напоминание. Закройте его кнопкой ×, чтобы скрыть на 7 дней. Существующие заказы не затрагиваются: уже начатые платежи по-прежнему подтверждаются, а возвраты работают.
Когда лицензия истекает, расширение продолжает работать, но для обновлений и поддержки нужно продление. Статус проверяется автоматически при открытии административной Dashboard или страницы Edit: раз в день в первые 14 дней после ввода ключа, затем раз в неделю. Задание cron не требуется. При удалении расширения лицензионный ключ и статус лицензии удаляются всегда.
Устранение неполадок
PayU India не отображается при оформлении заказа: проверьте, что лицензия активна, Enable/Disable включено и заполнены ключ и соль выбранного Mode. Проверьте, что покупатель платит в INR, что платёжный адрес находится в выбранной Geo Zone и что заказ достигает Total, указанного в настройках. Страница настроек показывает предупреждение при отсутствующих учётных данных и при валюте магазина, отличной от INR.
Платёж прошёл, но заказ остаётся без статуса: покупатель не вернулся в магазин, и вебхук не поступил. Добавьте URL вебхука со страницы настроек в PayU Dashboard > Webhooks для успешных и неуспешных платежей и убедитесь, что он доступен из интернета.
Вебхук отвечает invalid_signature: хеш PayU не совпал. Проверьте, что ключ и соль режима платежа верны и используется Salt v1, а не Salt v2. Результат боевого платежа, подписанный тестовой солью, или наоборот, тоже отклоняется. Ничего не меняется.
Вебхук отвечает not_configured: отсутствует ключ или соль режима, в котором был начат платёж. Введите их; PayU повторит вебхук.
Вебхук отвечает verify_unavailable: API verify_payment пока не смог подтвердить платёж. Заказ переведён на проверку, и при следующей доставке проверка повторится.
Вебхук отвечает busy или retry: возврат покупателя с той же корзиной обрабатывался в тот же момент, либо не удалось установить статус заказа. PayU повторит вебхук. Причина записывается в журнал.
Вебхук отвечает ignored_unknown_txnid: транзакцию начал не этот магазин, например другой магазин с тем же аккаунтом PayU. Ничего не меняется.
Покупатель видит PayU India требует номер телефона: в заказе нет номера телефона. Оставьте поле Telephone в оформлении заказа. На OpenCart 4 покупатель может ввести номер в поле Phone блока подтверждения.
Покупатель видит This payment method is not available. Please reload the checkout page.: способ оплаты был выключен, учётные данные отсутствуют, или оформление заказа больше не соответствует заказу. Покупателю нужно перезагрузить оформление заказа.
Заказ в статусе проверки: прочитайте примечания на вкладке VibeFox PayU India Payment Gateway. Причина — расхождение суммы или валюты, неуспешная или ожидающая проверка либо платёж за отменённый заказ.
Возврат не выполняется: PayU transaction ID not found for this order. означает, что у заказа ещё нет платежа PayU. This payment was made in Test mode, but the Merchant Key/Salt of that mode are not set. (или Live mode) означает, что сначала нужно ввести учётные данные этого режима. Invalid refund amount: at most … INR can be refunded. означает, что сумма больше остатка платежа.
Мало информации в журнале: ошибки и предупреждения записываются всегда; включите Enable Logging, чтобы видеть также каждую форму платежа и каждый результат PayU.
Для разработчиков: перед подписанием запроса на оплату расширение вызывает событие OpenCart payu_p_request_fields с полями запроса и заказом. Ключ, идентификатор транзакции, сумму и URL возврата через него изменить нельзя.
Удаление
Перейдите в Extensions > Extensions, выберите тип Payments и нажмите Uninstall (красная кнопка −) рядом с VibeFox PayU India Payment Gateway. Лицензионный ключ и статус лицензии этого расширения удаляются всегда. OpenCart всегда удаляет собственные настройки расширения: Enable/Disable, Sort Order, Geo Zone, Total и статусы заказов из раздела Orders, которые при повторной установке возвращаются к значениям по умолчанию. Событие OpenCart расширения также удаляется (в OpenCart 4 — его события и стартовое действие, которое пропускает вебхук и возврат покупателя в режиме обслуживания). Если включено Delete data on uninstall, удаляются остальные настройки шлюза (название, описание, режим, ключи, соли, проверка платежа, журналирование) и журнал. Если выключено, они сохраняются для последующей повторной установки. Записи о транзакциях PayU и запросы на возврат всегда сохраняются, поэтому заказы, оплаченные ранее, можно вернуть и после повторной установки. Существующие заказы сохраняют свои платёжные примечания.
На OpenCart 4, чтобы удалить также файлы расширения, после удаления перейдите в Extensions > Installer, нажмите Uninstall (оранжевая кнопка −) рядом с VibeFox PayU India Payment Gateway в списке установленных расширений, затем Delete (красная кнопка с корзиной), чтобы удалить загруженный пакет.
PayU — товарный знак его владельца. Это расширение не связано с PayU и не одобрено PayU.
