VibeFox Mollie for PrestaShop — Помощь
Требования
PrestaShop: 8.0–9.x.
PHP: 8.0 или новее. Модуль не устанавливается на более старых версиях PHP.
Валюта магазина: валюта корзины должна быть одной из валют, поддерживаемых Mollie: AED, AUD, BGN, BRL, CAD, CHF, CZK, DKK, EUR, GBP, HKD, HUF, ILS, ISK, JPY, MXN, MYR, NOK, NZD, PHP, PLN, RON, SEK, SGD, THB, TWD, USD, ZAR. Для других валют вариант оплаты скрывается на этапе оформления заказа. Какие способы оплаты предлагает Mollie, зависит от валюты и вашего аккаунта.
Доступ к магазину из интернета: Mollie отправляет вебхуки в ваш магазин, поэтому сайт должен быть доступен из интернета. Без вебхуков заказы всё равно создаются, когда покупатель возвращается из Mollie.
Аккаунт Mollie: нужны API-ключи из Mollie Dashboard > Developers > API keys. Тестовые ключи начинаются с test_, боевые — с live_. Никакие другие ключи или секреты не нужны. Способы оплаты включаются в вашем аккаунте Mollie.
Лицензионный ключ VibeFox: покупается на vibefox.net. Один ключ работает на одном домене.
Установка
1. В бэк-офисе перейдите в Modules > Module Manager и нажмите Upload a module. Выберите ZIP-файл модуля.
2. Когда загрузка завершится, нажмите Configure или позже найдите VibeFox Mollie Gateway в списке модулей и нажмите Configure.
3. Вставьте лицензионный ключ VibeFox в поле License key в блоке лицензии вверху страницы Configure и нажмите Activate (см. Лицензионный ключ).
4. Введите тестовые и боевые API-ключи (см. Настройка). В Mollie настраивать вебхук не нужно.
5. Включите Enable/Disable и нажмите Save. Оставьте Test Mode включённым, пока не выполните тестовый платёж, а затем выключите его.
При установке модуль создаёт два статуса заказа: Awaiting Mollie payment и Mollie payment on hold. PrestaShop предлагает новый платёжный модуль для всех валют, стран и групп клиентов. Ограничить его можно в разделе Payment > Preferences.
Настройка
Все настройки находятся на странице модуля: Modules > Module Manager > VibeFox Mollie Gateway > Configure. У каждого раздела есть собственная кнопка Save, которая сохраняет всю страницу. Над полями страница предупреждает, если Mollie включён, но API-ключ текущего режима пуст, и если Mollie не поддерживает валюту по умолчанию магазина. В обоих случаях вариант оплаты скрывается на этапе оформления заказа.
При сохранении API-ключ, который не начинается с test_ или live_ и за которым не следуют минимум 30 букв и цифр, не сохраняется: появляется ошибка, а ранее сохранённый ключ остаётся.
Оформление заказа
Enable/Disable: Enable Mollie Gateway включает или выключает вариант оплаты. По умолчанию: off.
Title: название способа оплаты, которое показывается покупателю на этапе оформления заказа. Оно же сохраняется в заказе как название способа оплаты. По умолчанию: Mollie. Обязательное поле.
Description: описание способа оплаты, которое показывается покупателю на этапе оформления заказа. По умолчанию: Pay securely via Mollie.
API-ключи
Найти API-ключи можно в Mollie Dashboard в разделе Developers > API keys; в этом разделе есть ссылка на эту страницу. Тестовые и боевые ключи отдельны.
Test Mode: использует тестовый API-ключ для новых платежей. Реальные платежи не проводятся. На тестовой странице оплаты Mollie можно выбрать результат платежа. Покупатели видят под вариантом оплаты надпись Test mode: no real payment will be made. Платежи, созданные в другом режиме, для проверки статусов и возвратов продолжают использовать ключ своего режима. По умолчанию: on.
Test API Key: ваш тестовый API-ключ Mollie (начинается с test_).
Live API Key: ваш боевой API-ключ Mollie (начинается с live_).
Сохранённые ключи больше никогда не показываются. Поле остаётся пустым и показывает Saved — leave empty to keep it. Вводите новое значение, только если хотите его изменить.
Clear saved keys: отметьте ключ и нажмите Save, чтобы удалить его. Пустое поле сохраняет сохранённое значение.
Webhook: показывает URL вебхука. Настройка не требуется: модуль передаёт этот URL в Mollie с каждым платежом. При понятных URL он выглядит так: https://your-shop/module/wcp_mollie_gateway/webhook, возможно, с кодом языка. Он должен быть доступен из интернета, иначе заказы создаются только тогда, когда покупатель возвращается из Mollie.
Заказы
Order Status After Payment: статус заказа, который устанавливается после успешной оплаты. Статус устанавливается за один шаг.
Банковские переводы ждут в статусе Awaiting Mollie payment. Авторизованные платежи и несовпадения суммы или валюты переходят в статус Mollie payment on hold.
Дополнительно
Logging: записывает вызовы API и вебхуки в файл logs/molg_debug.log.php в папке модуля. Файл нельзя открыть из браузера. Ошибки и предупреждения записываются всегда, даже когда опция выключена. API-ключи и данные покупателей никогда не записываются. По умолчанию: off.
Log: показывает размер и последние записи журнала. Нажмите Clear log, чтобы очистить его.
Delete Data on Uninstall: если включено, настройки модуля и его журнал удаляются при удалении модуля. Идентификаторы платежей Mollie, сохранённые с заказами, записи о возвратах и статусы заказов модуля всегда сохраняются. По умолчанию: off.
Оформление заказа
На этапе оплаты покупатель выбирает вариант оплаты (по умолчанию Mollie) и подтверждает его. Модуль создаёт платёж Mollie на сумму корзины в валюте корзины (JPY и ISK без десятичных знаков) с описанием Order # и номером корзины и отправляет покупателя на размещённую страницу оплаты Mollie. Там покупатель выбирает один из способов оплаты, включённых в вашем аккаунте Mollie, и оплачивает. На этом этапе заказа ещё не существует.
Вебхуки Mollie не подписаны и содержат только ID платежа. Поэтому модуль никогда не доверяет вебхуку как таковому: он принимает только ID платежей, которые создал сам, запрашивает платёж из API Mollie ключом того режима, в котором платёж был совершён, проверяет, что платёж принадлежит корзине, и сверяет оплаченную сумму и валюту с суммой корзины. Заказ отмечается как оплаченный только после того, как Mollie подтвердит это таким образом. Модуль обрабатывает следующие статусы платежей Mollie:
Когда покупатель возвращается, модуль так же проверяет последний платёж корзины через API Mollie. Выполненный платёж ведёт на стандартную страницу подтверждения заказа с надписью Your payment with Mollie has been received. Для банковского перевода на странице отображается Your order will be processed as soon as Mollie receives your bank transfer. Если заказ на удержании, страница показывает We are confirming your payment with Mollie. The order will be updated automatically — please do not pay again. Если платёж существующего заказа не прошёл или заказ был отменён, страница показывает Your Mollie payment was not completed. Please contact us about this order.
Если платёж был отменён, не прошёл, истёк или не завершён, покупатель возвращается к оформлению заказа с сообщением, например You cancelled the Mollie payment. You can try again or choose another payment method. или The Mollie payment has expired. Please try again or choose another payment method. Корзина сохраняется. Если Mollie недоступна или ещё не приняла решение, появляется страница Payment confirmation, которая просит покупателя не платить повторно и предлагает кнопку Check again; вебхук создаст заказ, как только придёт.
Когда покупатель платит снова, открытый платёж Mollie на ту же сумму используется повторно, а не создаётся второй платёж к оплате. Если сумма корзины изменилась, старый открытый платёж отменяется в Mollie, когда Mollie это допускает. Если старый платёж тем временем был оплачен, заказ создаётся без нового платежа.
Если Mollie не может начать платёж, покупатель остаётся на этапе оформления заказа с коротким сообщением, например The payment provider could not be reached. Please try again in a moment., This payment method is temporarily unavailable. Please choose another payment method. (неверный API-ключ) или Mollie cannot accept a payment of this amount or currency. Please choose another payment method. Техническая причина записывается в журнал.
Вебхук работает, пока магазин находится в режиме обслуживания, и не блокируется ограничением по странам вашего магазина.
Способ Mollie покупатель выбирает на странице Mollie, а не на этапе оформления заказа вашего магазина. В модуле нет подписок и регулярных платежей, сохранённых карт и мандатов, полей для карт на вашем сайте, кнопок экспресс-оплаты Apple Pay и PayPal и Orders API, поэтому Mollie не предлагает для таких платежей способы, которым нужны строки заказа (например, некоторые варианты Klarna, Billie или in3). Авторизованные платежи захватываются или отменяются в Mollie Dashboard, а не из PrestaShop.
Заказы и возвраты
Статусы заказа
Заказа пока нет: покупатель был отправлен в Mollie и не оплатил или Mollie ещё не подтвердила платёж. Существует только корзина.
Payment accepted или Delivered: платёж подтверждён. Статус соответствует Order Status After Payment. Платёж записывается с ID платежа Mollie (tr_...) в качестве ID транзакции, а примечание показывает платёж Mollie, способ оплаты и режим.
Awaiting Mollie payment: покупатель выбрал банковский перевод на странице Mollie. Заказ переходит в оплаченный статус, когда Mollie получает деньги.
Mollie payment on hold: авторизованный платёж ждёт захвата; Mollie сообщила о чарджбэке; оплаченная сумма или валюта отличаются от корзины (например, корзину изменили после начала платежа); тестовый платёж был оплачен, пока магазин работал в боевом режиме (деньги не поступили); или платёж пришёл после отмены заказа. Примечание объясняет причину. Проверьте платёж в Mollie Dashboard, затем обработайте заказ или верните платёж.
Payment error: банковский перевод или авторизация существующего заказа не прошли, истекли или были отменены. Оплаченный заказ никогда не меняется.
Refunded: платёж полностью возвращён через модуль.
Если оплачен второй платёж по той же корзине, заказ не меняется. Примечание просит вас вернуть дублирующий платёж в Mollie Dashboard.
Блок Mollie payment
На странице заказа показан блок Mollie payment с ID платежа Mollie, способом оплаты, статусом платежа, оплаченной и возвращённой суммой, значком Test mode для тестовых платежей, историей возвратов и Mollie notes заказа. Примечания видны только в бэк-офисе.
Возвраты
В блоке Mollie payment введите сумму (подставляется сумма, которая ещё не возвращена), при необходимости причину и нажмите Refund via Mollie. Подтвердите вопрос Refund this amount through Mollie? This cannot be undone. Поддерживаются полные и частичные возвраты. Нужно право на редактирование заказов; доступ к разделам модулей не требуется. Возвраты выполняются на ту сумму и в той валюте, которые списала Mollie, поэтому после расхождения суммы можно вернуть не больше того, что покупатель фактически оплатил, а не сумму заказа. Возврат отправляется по платежу, который фактически оплатил заказ, с API-ключом режима, в котором он был совершён, поэтому этот ключ должен быть задан. Если Mollie отклоняет возврат, блок показывает сообщение об ошибке Mollie, и возврат не записывается. Успешный возврат добавляется в историю возвратов и в примечания с ID возврата Mollie. Полный возврат переводит заказ в статус Refunded. Частичный возврат статус не меняет. Возвраты доступны, когда Mollie отметила платёж как оплаченный.
Модуль не создаёт кредитные накладные (credit slips). Стандартные кнопки возврата PrestaShop на странице заказа не возвращают деньги через Mollie. Возвраты, созданные в Mollie Dashboard, на заказе не отображаются; чарджбэк добавляет примечание.
Лицензионный ключ
Модуль работает с лицензионным ключом VibeFox с vibefox.net. Блок лицензии License — VibeFox Mollie Gateway — первый блок на странице Modules > Module Manager > VibeFox Mollie Gateway > Configure, над настройками. Вставьте ключ в поле License key и нажмите Activate. После этого блок показывает ключ в скрытом виде, статус (например, дату, до которой действует лицензия, и ваш домен), а также кнопки Check now для повторной проверки статуса, Change key для ввода другого ключа и Remove key для удаления ключа из этого магазина. Ниже находятся строка Product: presta-payment-mollie и ссылка Manage licenses and domains in your account, которая открывает ваш аккаунт vibefox.net. Изменить ключ могут только сотрудники с правом Configure для модуля. Тексты блока соответствуют языку бэк-офиса (включены английский и русский).
Если ключ не принят, блок сообщает причину, например Key not found, This key belongs to another product, Domain limit reached или License expired on с датой. После смены адреса магазина или после освобождения слота домена в вашем аккаунте нажмите Check now. Если сервер лицензий недоступен, модуль продолжает работать по последнему известному статусу.
Один ключ работает на одном домене: на домене основного магазина, в том числе в конфигурации с несколькими магазинами. Удаление ключа из магазина не освобождает слот домена. Освободите слот в своём аккаунте vibefox.net.
Без активного ключа Mollie не показывается покупателям при оформлении заказа. Если платёж всё же начат, покупатель видит This payment method is not available. Please choose another one. Витрина PrestaShop не знает, что вы вошли в бэк-офис, поэтому способ оплаты скрыт и для вас: настроить модуль можно до покупки ключа, но проверить его на этапе оформления заказа нельзя. Напоминание появляется в Modules > Module Manager на вкладке Alerts. Существующие заказы не затрагиваются: уже начатые платежи по-прежнему подтверждаются, а возвраты работают.
Когда лицензия истекает, модуль продолжает работать, но для обновлений и поддержки нужно продление. Статус автоматически проверяется снова, пока вы работаете в бэк-офисе: раз в день в первые 14 дней после ввода ключа, затем раз в неделю. Задание cron не нужно. Удаление или сброс модуля всегда удаляет лицензионный ключ и статус лицензии.
Устранение неполадок
Mollie не отображается при оформлении заказа: проверьте, что лицензия активна, Enable/Disable включено и в текущем режиме задан API-ключ: Test API Key в тестовом режиме, Live API Key в боевом. Проверьте, что валюта корзины поддерживается Mollie. На странице настроек появляется предупреждение об отсутствующем ключе и о неподдерживаемой валюте магазина. В разделе Payment > Preferences проверьте, что модуль разрешён для валюты корзины, страны покупателя и группы покупателя.
Платёж прошёл, но заказ не создан: вебхук не может достучаться до вашего магазина. URL из раздела Webhook должен быть доступен из интернета (без базовой аутентификации и без межсетевого экрана, который его блокирует). Заказ создаётся также тогда, когда покупатель возвращается в магазин после оплаты или нажимает Check again.
Вебхук отвечает Unknown payment.: платёж создан не этим магазином или Mollie не знает его с API-ключом своего режима, например платёж из другого аккаунта Mollie.
Вебхук отвечает Payment ID mismatch.: платёж не принадлежит корзине, для которой был создан. Ничего не меняется.
Вебхук отвечает Failed to fetch payment.: API Mollie недоступен или API-ключ режима платежа не задан. Mollie повторит вебхук позже.
Вебхук отвечает Temporarily unavailable.: корзину в тот же момент обрабатывал другой запрос, или заказ не удалось создать (например, модуль отключён). Mollie повторит вебхук. Включите Logging, чтобы увидеть причину.
URL вебхука в браузере показывает Method not allowed.: это нормально. URL принимает только запросы от Mollie.
API-ключ не сохраняется: ключ должен начинаться с test_ или live_, за которым идут минимум 30 букв и цифр. Скопируйте его заново из Mollie Dashboard.
Покупатель видит ошибку при выборе Mollie: посмотрите поле Log на странице модуля. Там показаны HTTP-код и сообщение Mollie. 401 означает неверный API-ключ; 422 указывает на поле запроса, например сумму или валюту, которые Mollie не принимает.
Заказ в статусе Mollie payment on hold: прочитайте примечания заказа (см. Статусы заказа), затем обработайте заказ или верните платёж.
Возврат не проходит с сообщением о режиме: платёж был совершён в тестовом или боевом режиме, а API-ключ этого режима не задан. Введите его и повторите попытку.
Другие валюты или данные платежа: разработчики могут изменить список валют хуком actionWcpMollieSupportedCurrencies и запрос на оплату хуком actionWcpMolliePaymentData.
Удаление
Перейдите в Modules > Module Manager, откройте меню рядом с VibeFox Mollie Gateway и выберите Uninstall. Лицензионный ключ и статус лицензии этого модуля всегда удаляются. Если Delete Data on Uninstall включено, настройки модуля и журнал удаляются. Если выключено, все настройки сохраняются для последующей переустановки. Идентификаторы платежей Mollie и записи о возвратах, а также статусы заказов Awaiting Mollie payment и Mollie payment on hold всегда сохраняются, поэтому заказы, оплаченные раньше, можно вернуть и после переустановки. Существующие заказы сохраняют свои платёжные примечания и ID транзакций.
Mollie — товарный знак её владельца. Этот модуль не связан с Mollie и не одобрен компанией Mollie.
