Назад

VibeFox CorvusPay for PrestaShop — Помощь

Требования

PrestaShop: 8.0–9.x.

PHP: 8.0 или новее. Модуль не устанавливается на более старых версиях PHP.

Валюта: AUD, BAM, BHD, CAD, CHF, CZK, DKK, EUR, GBP, HRK, HUF, ISK, MKD, NOK, PLN, RON, RSD, RUB, SEK или USD. Если корзина в любой другой валюте, способ оплаты скрыт на этапе оформления заказа. Суммы передаются с 2 знаками после запятой; итог с большим количеством знаков (например, в магазине с ценами в BHD, имеющими 3 знака) отклоняется, а не округляется.

Аккаунт CorvusPay: нужен мерчант-аккаунт CorvusPay. CorvusPay выдаёт Store ID и Secret Key для каждого магазина отдельно для тестового и рабочего; они показаны в CorvusPay Merchant Center. Success URL и Cancel URL модуля нужно внести туда (см. Настройка).

Лицензионный ключ VibeFox: покупается на vibefox.net. Один ключ работает на одном домене.

Установка

1. В панели администрирования откройте Modules > Module Manager и нажмите Upload a module. Выберите ZIP-файл модуля.

2. Когда загрузка завершится, нажмите Configure или позже найдите VibeFox CorvusPay Gateway в списке модулей и нажмите Configure.

3. Введите лицензионный ключ VibeFox в поле License key в блоке лицензии вверху страницы Configure и нажмите Activate (см. раздел Лицензионный ключ).

4. Введите Store ID и Secret Key тестового магазина CorvusPay (а для реальных платежей — и рабочего магазина). Скопируйте Success URL и Cancel URL, показанные на странице Configure, в CorvusPay Merchant Center — для тестового и рабочего магазинов.

5. Включите Enable/Disable и нажмите Save. Создайте тестовый заказ, затем выключите Test Mode, чтобы начать принимать реальные платежи.

При установке модуль создаёт статус заказа CorvusPay payment on hold. PrestaShop привязывает новый платёжный модуль к валютам, группам клиентов и странам, активным на тот момент. Это можно изменить в Payment > Preferences; страну, которую вы включите позже, нужно отметить там для модуля.

Настройка

Все настройки находятся на странице модуля: Modules > Module Manager > VibeFox CorvusPay Gateway > Configure. У каждого раздела своя кнопка Save, которая сохраняет всю страницу. Над полями страница показывает Тестовый режим включён. Платежи идут в тестовую среду CorvusPay — реальные деньги не списываются., пока включён тестовый режим; предупреждает, если способ оплаты включён, но Store ID или Secret Key текущего режима пусты (тогда он скрыт на этапе оформления заказа, пока их не заполнят), и если валюта магазина по умолчанию не поддерживается CorvusPay.

CorvusPay

Enable/Disable: Enable CorvusPay Gateway включает или выключает способ оплаты. По умолчанию: выключено.

Title: название способа оплаты, которое видят покупатели на этапе оформления заказа. Оно же сохраняется как название способа оплаты в заказе. По умолчанию: Credit/Debit Card (CorvusPay).

Description: текст под способом оплаты на этапе оформления заказа. По умолчанию: Pay securely with your credit or debit card via CorvusPay. В тестовом режиме к нему добавляется (Тестовый режим — реальный платёж не списывается.).

Учётные данные магазина

Store ID и Secret Key выдаёт CorvusPay для каждого магазина (тестового и рабочего отдельно); они показаны в CorvusPay Merchant Center.

Test Mode: использует тестовую среду CorvusPay (wallet.test.corvuspay.com) и тестовые Store ID и Secret Key. По умолчанию: включено. Выключите, чтобы принимать реальные платежи на wallet.corvuspay.com.

Test Store ID: числовой Store ID вашего тестового магазина CorvusPay.

Test Secret Key: Secret Key вашего тестового магазина CorvusPay, используется для подписей HMAC-SHA256.

Live Store ID: числовой Store ID вашего рабочего магазина CorvusPay.

Live Secret Key: Secret Key вашего рабочего магазина CorvusPay, используется для подписей HMAC-SHA256.

Clear saved secrets: отметьте Test Secret Key или Live Secret Key и нажмите Save, чтобы удалить его.

Store ID должен содержать только цифры. Если введено что-то другое, страница покажет … должен содержать только цифры — предыдущее значение сохранено., а остальные поля всё равно сохранятся. Сохранённые Secret Key больше не показываются: поле остаётся пустым и показывает Сохранён: оставьте поле пустым, чтобы не менять. Вводите новое значение, только если хотите его изменить. Платёж всегда проверяется по Secret Key магазина, в котором он был начат, поэтому держите тестовый ключ заполненным, пока могут прийти тестовые платежи.

Success URL и Cancel URL

Скопируйте два адреса из этого раздела в CorvusPay Merchant Center — для тестового и рабочего магазинов. CorvusPay возвращает покупателя на них после оплаты. Копируйте их точно так, как их показывает страница; при понятных URL они выглядят как примеры ниже, возможно с кодом языка, например /en/.

Success URL: выглядит так: https://your-shop/module/wcp_corvuspay_gateway/success. CorvusPay подписывает этот запрос; заказ создаётся только после проверки подписи.
Cancel URL: выглядит так: https://your-shop/module/wcp_corvuspay_gateway/cancel. CorvusPay её не подписывает, поэтому она может только отметить как отменённую неоплаченную попытку платежа с номером заказа CorvusPay, выданным этим магазином.

Оплата

Transaction Type: как списываются деньги с карты.

Sale (capture immediately): деньги списываются сразу (по умолчанию).
Authorize only (capture in Merchant Center): сумма только резервируется. Заказ переводится в статус CorvusPay payment on hold; вы подтверждаете (завершаете) платёж в CorvusPay Merchant Center, а затем переводите заказ в статус Payment accepted.

Payment Page Language: язык страницы оплаты CorvusPay. Site language (по умолчанию) использует текущий язык вашего магазина, если CorvusPay его поддерживает, иначе английский. Также можно выбрать Hrvatski, English, Deutsch, Italiano, Srpski или Slovenščina.

Order Status After Payment: статус заказа после успешного платежа Sale. Заказ создаётся сразу в этом статусе.

Payment accepted (default): стандартный статус PrestaShop для оплаченных заказов.
Delivered (completed): каждый оплаченный заказ получает статус «Доставлено».
CorvusPay payment on hold: каждый оплаченный заказ ждёт вашей ручной проверки. Платёж всё равно записывается в заказ.

Дополнительно

Logging: записывает отладочную информацию в logs/corvuspay_p_debug.log.php в папке модуля. Файл нельзя открыть из браузера. Ошибки записываются всегда, даже когда опция выключена; секреты, подписи и данные покупателей не записываются никогда. По умолчанию: выключено.

Log: показывает размер и последние записи журнала. Нажмите Clear log, чтобы очистить его.

Delete Data: если включено, при удалении модуля удаляются его настройки и файлы журнала. Заказы, данные транзакций CorvusPay и статус заказа всегда сохраняются. По умолчанию: выключено.

Оформление заказа

На этапе оплаты покупатель выбирает способ оплаты (по умолчанию Credit/Debit Card (CorvusPay)) и подтверждает выбор. Следующая страница показывает Перенаправление в CorvusPay для оплаты. Пожалуйста, подождите... и отправляет подписанную форму на страницу оплаты CorvusPay. Если перенаправление не начинается, покупатель нажимает Pay via CorvusPay; Back to checkout возвращает к оформлению заказа. Передаются сумма корзины, валюта, краткое описание (номер корзины и название магазина), а также данные адреса для счёта и e-mail (чтобы заполнить страницу оплаты заранее). На этом этапе заказа ещё нет. Тот же номер заказа CorvusPay используется повторно, пока не меняются сумма, валюта, режим и тип транзакции, и CorvusPay не принимает для него второй платёж.

После оплаты CorvusPay возвращает покупателя на Success URL. Заказ отмечается как оплаченный только после подтверждения CorvusPay: номер заказа CorvusPay должен был быть выдан этим магазином, подпись должна совпадать с Secret Key магазина, в котором начат платёж, а сумма и валюта должны совпадать с корзиной. После этого заказ создаётся, и покупатель видит стандартную страницу подтверждения заказа с Ваш платёж CorvusPay получен. Для Authorize only страница показывает Ваш платёж CorvusPay авторизован. Сумма будет списана, когда магазин обработает ваш заказ., а для заказа на удержании — Ваш платёж получен и проверяется магазином.

Если заказ не может быть создан в этот момент (например, другой запрос подтверждает ту же корзину), покупатель видит Ваш платёж подтверждается с кнопкой Check again, которая ведёт на подтверждение заказа, как только заказ появится. Если запрос на Success URL не удаётся проверить, покупатель видит Платёж не подтверждён и Не удалось подтвердить этот платёж CorvusPay. Если с вашей карты списаны деньги, обратитесь в магазин — не платите повторно. Ничего не меняется. Success URL работает и тогда, когда магазин находится в режиме обслуживания.

Если покупатель отменяет оплату на странице CorvusPay, он возвращается к оформлению заказа с сохранённой корзиной и сообщением Оплата CorvusPay отменена, заказ не оплачен. Ваша корзина сохранена — вы можете повторить попытку или выбрать другой способ оплаты.

Если оплату не удаётся начать, покупатель остаётся на этапе оформления заказа с коротким сообщением: CorvusPay не настроен. Выберите другой способ оплаты., CorvusPay не принимает платежи в … или Эту сумму заказа нельзя оплатить через CorvusPay (она должна быть больше нуля и содержать не более 2 знаков после запятой). Выберите другой способ оплаты.

Заказ подтверждается, только когда CorvusPay возвращает покупателя на Success URL; уведомлений между серверами нет. Если покупатель закрывает браузер сразу после оплаты, заказ не создаётся. Модуль не поддерживает возвраты, списания (capture) и отмены (void) из PrestaShop (серверный API CorvusPay требует клиентский сертификат), а также сохранённые карты, подписки, рассрочку и форму карты на сайте.

Заказы

Статусы заказа

Заказа пока нет: покупатель был отправлен в CorvusPay и не вернулся с подтверждённым платежом. Существует только корзина. Если покупатель заплатил, но не вернулся, проверьте платёж в CorvusPay Merchant Center и создайте заказ вручную.

Payment accepted, Delivered или CorvusPay payment on hold: платёж Sale подтверждён. Статус соответствует Order Status After Payment. Платёж записывается с ID транзакции CorvusPay или, если CorvusPay его не присылает, с номером заказа CorvusPay, по которому платёж можно найти в Merchant Center. Приватное примечание к заказу показывает номер заказа CorvusPay, код авторизации и тип карты.

CorvusPay payment on hold, authorized: выбрано Authorize only. Подтвердите платёж в CorvusPay Merchant Center, затем переведите заказ в статус Payment accepted.

CorvusPay payment on hold, amount/currency mismatch: оплаченная сумма или валюта не совпадают с корзиной, например потому что корзину изменили в другой вкладке. Платёж записывается с фактически оплаченной суммой, если она в валюте заказа. Не отправляйте товар до проверки платежа в CorvusPay Merchant Center.

CorvusPay payment on hold, payment after cancel: успешный платёж поступил по попытке, которую покупатель отменил. Выполните заказ или возвратите платёж в CorvusPay Merchant Center.

Если для корзины, по которой уже есть заказ, поступает другой успешный платёж, заказ не меняется. Примечание просит вас проверить CorvusPay Merchant Center и при необходимости вернуть дублирующий платёж.

Блок платежа CorvusPay

На странице заказа показывается блок CorvusPay payment с номером заказа CorvusPay, статусом попытки платежа, типом транзакции (Sale или Authorize only), суммой (и полученной суммой, если CorvusPay её сообщил), кодом авторизации, транзакцией и типом карты. Тестовые платежи помечаются как Test.

Возвраты: возвраты, списания (capture) и отмены из PrestaShop не поддерживаются. Выполняйте их в CorvusPay Merchant Center и вручную записывайте результат в PrestaShop.

Лицензионный ключ

Модуль работает с лицензионным ключом VibeFox с vibefox.net. Блок лицензии License — VibeFox CorvusPay Gateway — это первый блок на странице Modules > Module Manager > VibeFox CorvusPay Gateway > Configure, над настройками. Вставьте ключ в поле License key и нажмите Activate. После этого блок показывает ключ в замаскированном виде, статус (например, дату, до которой лицензия действует, и ваш домен), а также кнопки Check now, чтобы снова проверить статус, Change key, чтобы ввести другой ключ, и Remove key, чтобы удалить ключ из этого магазина. Ниже находятся строка Product: presta-payment-corvuspay и ссылка «Управление лицензиями и доменами в вашем аккаунте», которая открывает ваш аккаунт vibefox.net. Изменить ключ могут только сотрудники с правом Configure для модуля. Тексты блока соответствуют языку бэк-офиса (включены английский и русский).

Если ключ не принят, блок сообщает причину, например Key not found, This key belongs to another product, Domain limit reached или License expired on с датой. После смены адреса магазина или после освобождения слота домена в вашем аккаунте нажмите Check now. Если сервер лицензий недоступен, модуль продолжает работать по последнему известному статусу.

Один ключ работает на одном домене: домене основного магазина, в том числе в многомагазинной конфигурации. Удаление ключа из магазина не освобождает слот домена. Освободите слот в своём аккаунте vibefox.net.

Без активного ключа CorvusPay не показывается покупателям на этапе оформления заказа. Если платёж всё же начат, покупатель видит Этот способ оплаты недоступен. Выберите другой. Витрина PrestaShop не знает, что вы вошли в бэк-офис, поэтому способ оплаты скрывается и для вас: вы можете настроить модуль до покупки ключа, но не можете проверить его на оформлении заказа. Напоминание появляется в Modules > Module Manager на вкладке Alerts. Существующие заказы не затрагиваются: уже начатые платежи по-прежнему подтверждаются, когда покупатель возвращается из CorvusPay.

Когда лицензия истекает, модуль продолжает работать, но для обновлений и поддержки нужно продление. Статус автоматически перепроверяется во время работы в бэк-офисе: раз в день в первые 14 дней после ввода ключа, затем раз в неделю. Cron-задание не требуется. Удаление или сброс модуля всегда удаляет лицензионный ключ и статус лицензии.

Устранение неполадок

CorvusPay не появляется при оформлении заказа: проверьте, что лицензия активна, Enable/Disable включено, Store ID и Secret Key текущего режима заполнены (Test Store ID и Test Secret Key в тестовом режиме, Live Store ID и Live Secret Key в рабочем режиме) и валюта корзины поддерживается CorvusPay. В Payment > Preferences проверьте, что модуль разрешён для валюты корзины, страны покупателя и группы покупателя.

Платёж прошёл, но заказ не создан: вероятно, Success URL не внесён в CorvusPay Merchant Center или Secret Key в PrestaShop не совпадает с магазином. Найдите INVALID signature в поле Log на странице модуля (ошибки записываются всегда). Заказ также не создаётся, если покупатель закрыл браузер до возврата; тогда проверьте платёж в Merchant Center и создайте заказ вручную.

Покупатель видит Платёж не подтверждён: запрос на Success URL был отклонён: не хватало обязательных полей, номер заказа CorvusPay выдан не этим магазином, Secret Key этого магазина пуст или подпись не совпала. Ничего не меняется. Причину покажет журнал.

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

Покупатель видит Эту сумму заказа нельзя оплатить через CorvusPay: сумма равна нулю или содержит более 2 знаков после запятой.

Покупатель видит CorvusPay не настроен или CorvusPay не принимает платежи в …: отсутствует Store ID или Secret Key текущего режима, либо валюта корзины не поддерживается.

Заказ в статусе CorvusPay payment on hold: прочитайте приватные примечания к заказу. Выбрано Authorize only, оплаченная сумма или валюта не совпали с корзиной, платёж поступил после отмены покупателем, или Order Status After Payment установлен на удержание.

Удаление

Откройте Modules > Module Manager, нажмите меню рядом с VibeFox CorvusPay Gateway и выберите Uninstall. Лицензионный ключ и статус лицензии этого модуля всегда удаляются. Если Delete Data включено, настройки модуля и файлы журнала удаляются. Если выключено, все настройки сохраняются для повторной установки позже. Данные транзакций CorvusPay и статус заказа CorvusPay payment on hold всегда сохраняются, поэтому блок CorvusPay у старых заказов вернётся после повторной установки. Существующие заказы сохраняют свои платёжные примечания и ID транзакций.

CorvusPay — товарный знак его правообладателя. Этот модуль не аффилирован с CorvusPay и не одобрен им.