VibeFox Flutterwave for OpenCart — Допомога
Вимоги
OpenCart: 3.0.x (перевірено на 3.0.5.0) або 4.0.2 і новіші версії (перевірено на 4.1.0.3).
PHP: 8.0 або новіша.
Обліковий запис Flutterwave: вам потрібні секретні ключі вашого облікового запису Flutterwave з панелі Flutterwave, розділ Settings, API keys: FLWSECK_TEST-… для тестового режиму та FLWSECK-… для робочого режиму. Використовуються лише секретні ключі. Публічні ключі та ключі шифрування не потрібні. Також ви налаштовуєте вебхук із секретним хешем на свій вибір (див. Налаштування).
Валюти: замовлення завжди списується у валюті замовлення. Саме розширення не обмежує країни чи валюти; Flutterwave покаже помилку, якщо ваш обліковий запис не підтримує валюту. Місця, де пропонується Flutterwave, можна обмежити за допомогою Geo Zone та Total.
Ліцензійний ключ VibeFox: купується на vibefox.net. Один ключ працює на одному домені.
Встановлення
Завантаження — один zip-файл із пакетами для обох версій OpenCart. Розпакуйте його на своєму комп'ютері. Він містить README.txt, пакет для OpenCart 3 wcp_flutterwave_payment-oc3-(version).ocmod.zip і пакет для OpenCart 4 wcp_flutterwave_payment.ocmod.zip. Встановлюйте лише пакет для своєї версії OpenCart. Ліцензійний ключ однаковий для обох версій.
OpenCart 3
1. В адміністративній частині перейдіть до Extensions > Installer, натисніть Upload і виберіть файл wcp_flutterwave_payment-oc3-(version).ocmod.zip. Розширення не містить модифікацій OCMOD, тому оновлювати Extensions > Modifications не потрібно. Замість інсталятора можна також скопіювати вміст папки upload з цього пакета в кореневу папку вашого магазину.
2. Перейдіть до Extensions > Extensions і виберіть тип Payments. Знайдіть VibeFox Flutterwave Payment і натисніть Install (зелена кнопка +). Вашому користувачу-адміністратору потрібне право змінювати список платіжних розширень.
3. Натисніть Edit (кнопка з олівцем), щоб відкрити сторінку налаштувань. Вставте ваш ліцензійний ключ VibeFox у поле License key у блоці ліцензії у верхній частині сторінки і натисніть Activate (див. Ліцензійний ключ).
4. Введіть секретні ключі, налаштуйте вебхук у панелі Flutterwave і введіть той самий секретний хеш у розширенні (див. Налаштування).
5. Увімкніть Enable/Disable і натисніть Save. Перевірте платіж у тестовому режимі, потім увімкніть Live mode.
OpenCart 4
1. В адміністративній частині перейдіть до Extensions > Installer, натисніть Upload і виберіть файл wcp_flutterwave_payment.ocmod.zip. Не перейменовуйте файл: OpenCart 4 бере код розширення з імені файлу, і перейменований пакет не працює.
2. Пакет з'являється у списку встановлених розширень на тій самій сторінці. Натисніть Install (зелена кнопка +) поруч із ним.
3. Перейдіть до Extensions > Extensions і виберіть тип Payments. Знайдіть VibeFox Flutterwave Payment, натисніть Install (зелена кнопка +), потім Edit (кнопка з олівцем).
4. Введіть ліцензійний ключ, секретні ключі та вебхук так само, як у кроках 3–5 для OpenCart 3. Сторінка налаштувань і її поля однакові в обох версіях. Відрізняється лише URL вебхука (див. Вебхук).
Нове встановлення починається з вимкненим способом оплати та в тестовому режимі.
Налаштування
Усі налаштування розташовані на сторінці розширення: Extensions > Extensions > Payments > VibeFox Flutterwave Payment > Edit. Розділи перелічено ліворуч; кнопка Save під списком зберігає всю сторінку. Над налаштуваннями сторінка показує Live mode: real payments are accepted. або Test mode: no real money is charged. Вона попереджає, коли секретний ключ поточного режиму порожній, коли в робочому режимі в полі робочого ключа стоїть тестовий ключ (FLWSECK_TEST-…), або коли в тестовому режимі в полі тестового ключа стоїть робочий ключ (FLWSECK-…); тоді спосіб оплати приховується під час оформлення замовлення, доки проблему не виправлено. Також вона попереджає, коли не задано секретний хеш вебхука: тоді вебхуки відхиляються, а платежі підтверджуються лише тоді, коли покупець повертається до вашого магазину. Без права змінювати розширення сторінка показує налаштування, але не може їх зберегти.
Під час збереження Title має містити від 1 до 128 символів, Sort Order має бути порожнім або цілим числом, Total має бути порожнім або числом не менше 0, а вибрана географічна зона та статуси замовлень мають існувати. Інакше нічого не зберігається, і сторінка показує, що потрібно виправити. Проблеми з ключами збереженню не перешкоджають.
Flutterwave
Enable/Disable: Enable Flutterwave Payment вмикає або вимикає спосіб оплати. За замовчуванням: вимкнено.
Title: назва способу оплати, яку бачать покупці під час оформлення замовлення. Вона також зберігається в замовленні як назва способу оплати. За замовчуванням: Flutterwave. Обов'язкове поле, до 128 символів.
Description: опис способу оплати, який показується на кроці Confirm Order над кнопкою підтвердження. За замовчуванням: Pay securely via Card, Bank Transfer, USSD, Mobile Money via Flutterwave.
Sort Order: позиція Flutterwave серед способів оплати під час оформлення замовлення. Залиште поле порожнім або введіть ціле число.
Geo Zone: пропонувати Flutterwave лише для платіжних адрес у вибраній географічній зоні. За замовчуванням: All zones. Географічні зони налаштовуються в розділі System > Localisation > Geo Zones.
Total: сума замовлення в основній валюті магазину, яку має досягти замовлення, перш ніж буде запропоновано Flutterwave. Залиште поле порожнім, щоб пропонувати Flutterwave за будь-якої суми.
API-ключі
Скопіюйте секретні ключі з панелі Flutterwave, розділ Settings, API keys (у цьому розділі є посилання). Тестовий і робочий режими використовують різні ключі.
Live mode: приймає реальні платежі. Вимкніть його для тестового режиму. Тестовий режим використовує тестовий секретний ключ, і реальні кошти не списуються. Робочий режим використовує робочий секретний ключ. За замовчуванням: вимкнено (тестовий режим). Поки тестовий режим увімкнено, покупці на кроці Confirm Order бачать TEST MODE - no real payments will be processed.
Test Secret Key: ваш тестовий секретний ключ Flutterwave (FLWSECK_TEST-...).
Live Secret Key: ваш робочий секретний ключ Flutterwave (FLWSECK-...).
Збережені ключі та секретний хеш більше не показуються. Поле залишається порожнім і показує Saved — leave empty to keep it. Вводьте нове значення, лише якщо хочете його змінити. Щоб видалити збережене значення, позначте Clear the saved value під полем і натисніть Save.
Вебхук
Вебхук підтверджує платежі навіть тоді, коли покупець не повертається до вашого магазину. У панелі Flutterwave, у розділі Settings, Webhooks, введіть URL із поля Webhook URL цього розділу та секретний хеш на свій вибір — і для тестового, і для робочого режиму. У OpenCart 3 URL має такий вигляд: https://your-store/index.php?route=extension/payment/wcp_flutterwave_payment/webhook, в OpenCart 4 — https://your-store/index.php?route=extension/wcp_flutterwave_payment/payment/wcp_flutterwave_payment.webhook. Його формує адреса вашого магазину. Він має бути доступний з інтернету через HTTPS. Копіюйте URL точно так, як він показаний у налаштуваннях. Розширення реагує на цю подію:
Інші події ігноруються.
Secret Hash: секретний хеш вебхука. Він має збігатися зі значенням у налаштуваннях вебхука вашої панелі Flutterwave. Flutterwave надсилає його з кожним вебхуком, і те саме значення використовується для тестового та робочого режимів. Вебхуки без дійсного секретного хешу відхиляються. Без вебхука платіж підтверджується лише тоді, коли покупець повертається до вашого магазину.
Оплата
Payment Options: способи оплати через кому, які показуються на сторінці Flutterwave, наприклад card, banktransfer, ussd, mobilemoney. Залиште поле порожнім, щоб показувати всі способи, увімкнені у вашому обліковому записі. Під час збереження список очищується (малі літери, без дублікатів).
Autocomplete Orders: оплачені замовлення отримують Complete Order Status замість Paid Order Status. За замовчуванням: вимкнено.
Замовлення
OpenCart створює замовлення на кроці Confirm Order без статусу (відсутнє замовлення). Воно отримує статус лише після того, як Flutterwave підтвердить платіж через API. Кожне з полів нижче перелічує ваші статуси замовлень OpenCart.
Paid Order Status: статус після підтвердженого платежу. За замовчуванням: Обробка.
Complete Order Status: статус після підтвердженого платежу, коли увімкнено Autocomplete Orders. За замовчуванням: Виконано.
Awaiting Payment Status: покупець повернувся, поки платіж у Flutterwave ще очікує (банківський переказ, USSD, мобільні гроші). Замовлення зберігає цей статус, доки вебхук його не підтвердить. За замовчуванням: Очікування.
On Hold (Review) Status: платежі, сума або валюта яких не збігаються із замовленням, або які надходять після скасування замовлення, отримують цей статус і примітку з поясненням причини. За замовчуванням: Очікування, оскільки в OpenCart немає статусу On hold. Ви можете створити власний статус у розділі System > Localisation > Order Statuses і вибрати його тут.
Failed Status: очікуваний платіж за замовленням, що очікує, завершився невдало в Flutterwave. За замовчуванням: Невдала.
Refunded Status: встановлюється після повного повернення коштів зі сторінки замовлення. За замовчуванням: Повернено.
Додатково
Debug log: записує події API Flutterwave для налагодження у файл flwv_debug.log.php у папці журналів OpenCart (storage/logs). Файл неможливо відкрити через веб, а після досягнення 5 МБ його переміщують до flwv_debug.old.log.php. Помилки та попередження записуються завжди. Ключі, секретний хеш і дані покупців ніколи не записуються в журнал. За замовчуванням: вимкнено.
Log: показує розмір і останні записи журналу. Натисніть Clear log, щоб його очистити.
Delete data on uninstall: під час видалення розширення видаляє його налаштування та журнали. Дані про платежі, збережені в замовленнях, завжди залишаються. За замовчуванням: вимкнено.
Імпорт / експорт
Export: Download JSON зберігає налаштування у файл JSON. Секретні ключі та секретний хеш не експортуються.
Import: вставте раніше експортований JSON і натисніть Import, щоб відновити налаштування. Збережені ключі та секретний хеш зберігаються.
Оформлення замовлення
На кроці Payment Method покупець обирає спосіб оплати (за замовчуванням Flutterwave). На кроці Confirm Order покупець бачить ваш опис і примітку You will be redirected to the Flutterwave checkout page. OpenCart створює замовлення на цьому кроці, ще без статусу. В OpenCart 4 покупець обирає спосіб оплати кнопкою Choose у блоці способу оплати, у вікні Payment method options, і натискає Confirm Order внизу сторінки оформлення. Коли покупець натискає Confirm Order, розширення створює платіж Flutterwave на суму замовлення у валюті замовлення з електронною адресою покупця, телефоном і іменем з адреси оплати, назвою та логотипом вашого магазину і текстом Payment for order з номером замовлення, і надсилає покупця на сторінку оформлення Flutterwave. Потрібна дійсна електронна адреса. Там покупець оплачує одним зі способів, увімкнених у вашому обліковому записі (або вказаних у Payment Options).
Після оплати покупець повертається до вашого магазину. Замовлення позначається оплаченим лише тоді, коли Flutterwave його підтверджує: через вебхук або через перевірку на боці сервера, коли покупець повертається. Потім замовлення отримує статус стандартним для OpenCart способом, зі звичайними листами про замовлення та оновленням запасів, а покупець бачить сторінку успішного оформлення замовлення OpenCart. Якщо платіж ще очікує, наприклад банківський переказ, USSD або мобільні гроші, замовлення отримує Awaiting Payment Status, а сторінка також показує Your payment is being confirmed by Flutterwave. You will receive an e-mail as soon as it is confirmed. Коли Flutterwave підтверджує платіж, замовлення переходить до статусу оплаченого, а покупцеві надходить лист. Якщо замовлення відкладено для перевірки, наприклад тому що оплачена сума не збігається із замовленням, сторінка показує Your payment was received and your order is being reviewed. We will contact you if anything is needed. Якщо очікуваний платіж пізніше завершився невдало і покупець повертається до замовлення, сторінка показує Your Flutterwave payment was not completed. Please contact us about this order.
Якщо Flutterwave недоступний, коли покупець повертається, сторінка Payment confirmation повідомляє: Your payment is being confirmed by Flutterwave. Your order will be confirmed as soon as Flutterwave confirms it — please do not pay again. з кнопками Check again і Back to checkout. Вебхук встановлює статус замовлення, щойно він надходить.
Якщо платіж відхилено, покупець повертається до оформлення замовлення з повідомленням Your payment was declined. You can try again or choose another payment method. Якщо покупець скасовує платіж на сторінці Flutterwave, виводиться Payment was cancelled. You can try again or choose another payment method. Якщо платіж не було завершено, виводиться The payment was not completed. You can try again or choose another payment method. Якщо платіж не вдалося перевірити, виводиться Payment verification failed. Please contact support. Замовлення залишається без статусу, кошик зберігається, і покупець може оплатити знову. В OpenCart 4 ці повідомлення показуються над сторінкою оформлення.
OpenCart 3 створює нове замовлення щоразу, коли показується крок Confirm Order; OpenCart 4 оновлює замовлення в оформленні, тож нова спроба оплачує те саме замовлення. Кожна спроба отримує власне посилання. Перед новим платежем у Flutterwave перевіряються відкриті та очікувані платежі цього замовлення й інших замовлень того самого кошика за останні 24 години. Якщо один із них оплачено, він підтверджує своє замовлення, і покупець переходить на сторінку успіху замість повторної оплати. Якщо інше замовлення з того самого кошика вже оплачено через Flutterwave, новий платіж також не починається. Старіше посилання на оплату, яке буде оплачено пізніше, все одно приймається. Якщо той самий кошик оплачується двічі, наприклад у двох вкладках браузера, статус отримує замовлення лише за першим платежем: інше замовлення залишається без статусу, а оплачене замовлення отримує примітку з проханням повернути другий платіж у панелі Flutterwave.
OpenCart 4 зберігає замовлення в оформленні, доки не буде показано сторінку успіху. Якщо це замовлення тим часом було закрито без оплати (наприклад, його очікуваний платіж завершився невдало або ви його скасували), покупця повертають до оформлення з повідомленням про відхилений платіж, а наступне натискання Confirm Order оплачує нове замовлення з кошика. Якщо ви закрили замовлення після того, як його оплатили, виводиться повідомлення This order can no longer be paid (it was closed by the store). Please confirm your order again. Якщо це замовлення вже оплачено, але кошик відтоді змінився, зокрема змінилася кількість, виводиться повідомлення Your previous order is already paid. Please confirm the order again: the cart will be paid with a new order. Оплачене замовлення ніколи не показується оплаченим для іншого кошика.
Якщо Flutterwave не може розпочати платіж, покупець залишається на кроці Confirm Order з коротким повідомленням, наприклад Flutterwave is temporarily unavailable. Please try again in a moment or choose another payment method. Технічна причина записується в журнал.
Вебхук і URL повернення також працюють, коли магазин перебуває в режимі обслуговування, бо OpenCart 3 пропускає запити платіжних розширень, а на OpenCart 4 розширення додає для них стартову дію.
Розширення приймає лише разові платежі. На вашому сайті немає вбудованого чи модального оформлення, немає збережених карток, підписок, розділених платежів і платіжних планів. Розміщені платіжні посилання не можна скасувати через API Flutterwave, тож старе посилання все ще може бути оплачене.
Замовлення та повернення коштів
Статуси замовлень
Без статусу (missing order): покупця було перенаправлено до Flutterwave, і він не сплатив, платіж було відхилено або скасовано, або Flutterwave ще не підтвердив платіж. У розділі Sales > Orders такі замовлення показуються лише з фільтром Order Status, встановленим на Missing Orders.
Paid Order Status (за замовчуванням Обробка) або Complete Order Status (за замовчуванням Виконано): платіж підтверджено. Complete Order Status використовується, коли увімкнено Autocomplete Orders. Примітка показує суму, спосіб оплати, посилання Flutterwave, транзакцію та режим.
Awaiting Payment Status (за замовчуванням Очікування): покупець повернувся, поки платіж у Flutterwave ще очікував. Замовлення переходить до статусу оплаченого, коли Flutterwave підтверджує платіж.
On Hold (Review) Status (за замовчуванням Очікування): перевірені сума або валюта не збіглися із замовленням, або платіж надійшов після того, як замовленню було присвоєно статус без оплати, наприклад Скасовано. Фактично сплачені сума та валюта записуються, а примітка це пояснює. Виконайте замовлення або поверніть платіж. Якщо замовлення вже мало інший статус обробки, додається лише примітка.
Failed Status (за замовчуванням Невдала): Flutterwave повідомив, що остання спроба платежу за замовленням, що очікує, завершилася невдало або скасована. Примітка показує причину. Попередні спроби та оплачені замовлення не змінюються.
Refunded Status (за замовчуванням Повернено): платіж повністю повернено через розширення.
Якщо для вже оплаченого замовлення надходить другий платіж, замовлення не змінюється. Примітка просить вас повернути дублікат у панелі Flutterwave.
Примітки — це записи в History замовлення, які покупець не бачить.
Вкладка VibeFox Flutterwave Payment
У розділі Sales > Orders відкрийте замовлення, оплачене через Flutterwave. Унизу сторінки замовлення, поруч із History та Additional, вкладка VibeFox Flutterwave Payment показує Transaction reference, Mode (Test або Live), Status платежу, Transaction ID, Flutterwave reference, Payment type, суми Paid / refunded, форму повернення коштів, історію повернень і Flutterwave notes замовлення. Вкладка показується користувачам, які мають доступ до розширення.
Повернення коштів
На вкладці введіть Amount (підставляється сума, яку ще не повернуто), за бажанням Reason (optional), і натисніть Refund via Flutterwave. Підтвердьте питання Refund this amount through Flutterwave? This cannot be undone. Підтримуються повні та часткові повернення. Вам потрібне право змінювати розширення (налаштовується в System > Users > User Groups). Повернення виконуються в сумі та валюті, які списав Flutterwave, тож після розбіжності суми або валюти ви можете повернути максимум те, що фактично сплатив покупець, а не суму замовлення. Повернення надсилається секретним ключем того режиму, у якому було здійснено платіж (тестовий або робочий), тож цей ключ має бути заданий. Якщо Flutterwave відмовляє в поверненні, вкладка показує помилку, і повернення не реєструється. Успішне повернення додається до історії повернень і приміток з ідентифікатором повернення та статусом (завершено або ініційовано зі статусом, який повідомив Flutterwave). Повне повернення встановлює замовленню Refunded Status без сповіщення покупця і без повернення товарів на склад, як і ручна зміна статусу. Часткове повернення статус не змінює. Повернення доступні після того, як Flutterwave підтвердив платіж.
Повернення товарів у розділі Sales > Returns не повертають кошти через Flutterwave. Повернення, зроблені в панелі Flutterwave, не синхронізуються назад в OpenCart. За потреби оновіть статус замовлення вручну.
Ліцензійний ключ
Розширення працює з ліцензійним ключем VibeFox з vibefox.net. Блок ліцензії License — VibeFox Flutterwave Payment — це перший блок у розділі Extensions > Extensions > Payments > VibeFox Flutterwave Payment > Edit, над налаштуваннями. Вставте ключ у поле License key і натисніть Activate. Після цього блок показує ключ у замаскованому вигляді, статус (наприклад, дату, до якої діє ліцензія, і ваш домен) та кнопки Check now, щоб перевірити статус знову, Change key, щоб ввести інший ключ, і Remove key, щоб видалити ключ з цього магазину. Нижче розташовані рядок Product: opencart-payment-flutterwave і посилання 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.
Без активного ключа Flutterwave не показується покупцям під час оформлення замовлення. Якщо платіж усе ж розпочато, покупець бачить This payment method is not available. Please choose another one. Адміністратор, який увійшов в адміністративну частину в тому самому браузері, усе ще бачить спосіб оплати в магазині, позначений як (unlicensed — visible to admins only), тож ви можете налаштувати й протестувати розширення до купівлі ключа. В OpenCart 4 цей попередній перегляд недоступний: магазин не бачить входу адміністратора, тож без активного ключа спосіб оплати приховано для всіх. Після того як ви один раз відкриєте сторінку Edit, на Dashboard адміністративної частини з'являється нагадування. Закрийте його кнопкою ×, щоб приховати на 7 днів. Наявні замовлення не зачіпаються: уже розпочаті платежі й далі підтверджуються, а повернення працюють.
Коли строк дії ліцензії спливає, розширення продовжує працювати, але для оновлень і підтримки потрібне продовження. Статус автоматично перевіряється знову, коли ви відкриваєте адміністративний Dashboard або сторінку Edit: раз на добу протягом перших 14 днів після введення ключа, далі раз на тиждень. Cron-завдання не потрібне. Видалення розширення завжди видаляє ліцензійний ключ і статус ліцензії.
Усунення несправностей
Flutterwave не з'являється під час оформлення замовлення: перевірте, що ліцензія активна, Enable / Disable увімкнено, і що секретний ключ поточного режиму заповнений і відповідає режиму: тестовий ключ (FLWSECK_TEST-…) у тестовому режимі, робочий ключ (FLWSECK-…) у робочому режимі. Інакше на сторінці налаштувань з'являється попередження. Також перевірте, що платіжна адреса належить до вибраної Geo Zone і що сума замовлення досягає значення Total, встановленого в налаштуваннях.
Платіж пройшов, але замовлення залишається без статусу: вебхук не працює. У панелі Flutterwave перевірте, що URL вебхука точно збігається з показаним у Webhook URL, у тому режимі, який ви використовуєте (тестовому або робочому), і що його секретний хеш збігається з Secret Hash у розширенні. Очікувані банківські перекази, USSD і мобільні гроші залишаються в очікуванні, доки Flutterwave їх не підтвердить. Замовлення також отримує статус, коли покупець повертається до магазину після оплати. Увімкніть Debug log і перегляньте поле Log на сторінці розширення.
Вебхук відповідає Invalid hash або Secret hash not configured: секретний хеш у панелі Flutterwave відрізняється від вказаного в розширенні, або в розширенні його немає. Введіть однакове значення в обидва місця.
Вебхук відповідає Verification failed, Busy, retry later або Order could not be updated, retry later: не вдалося зв'язатися з Flutterwave для перевірки платежу, транзакція ще не видна, замовлення обробляв інший запит, або не вдалося встановити його статус. Flutterwave повторить вебхук. Причина вказана в журналі.
URL вебхука в браузері показує Empty body: це нормально. URL приймає лише вебхуки від Flutterwave.
Покупець бачить Payment gateway is not properly configured: секретний ключ поточного режиму відсутній або належить до іншого режиму.
Покупець бачить This payment method is not available: сесія оформлення більше не відповідає замовленню, або спосіб оплати тим часом було вимкнено. Покупець перезавантажує сторінку оформлення.
Покупець бачить We could not match this payment to an order: посилання повернення не належить до платежу за цим замовленням. Якщо з покупця списали кошти, знайдіть платіж у панелі Flutterwave.
Flutterwave показує помилку на своїй сторінці, або покупець бачить Flutterwave could not start the payment: ваш обліковий запис Flutterwave може не підтримувати валюту замовлення або вибрані варіанти оплати.
Замовлення після оплати має статус очікування або утримання: прочитайте примітки на вкладці VibeFox Flutterwave Payment (див. Статуси замовлень), потім виконайте замовлення або поверніть платіж.
На вкладці немає форми повернення коштів: вкладка пояснює причину: платіж ще не підтверджено, його повністю повернуто, ваша група користувачів не має права змінювати розширення, або секретний ключ режиму платежу не налаштовано.
Повернення не виконується з повідомленням про режим: платіж було здійснено в тестовому або робочому режимі, а секретний ключ цього режиму не налаштовано. Введіть його і повторіть спробу.
Повернення відповідає Another operation on this payment is running: у цей момент надсилалося інше повернення за цим замовленням. Зачекайте трохи, перевірте історію повернень і за потреби повторіть спробу.
Для розробників розширення викликає події OpenCart flwv_payment_request (дані, що надсилаються до Flutterwave) та flwv_currency_decimals (точність валюти).
Видалення
Перейдіть до Extensions > Extensions, виберіть тип Payments і натисніть Uninstall (червона кнопка −) поруч із VibeFox Flutterwave Payment. Ліцензійний ключ і статус ліцензії цього розширення завжди видаляються. OpenCart завжди видаляє власні налаштування розширення: Enable/Disable, Sort Order, Geo Zone, Total та статуси замовлень у розділі Orders, які під час повторного встановлення повертаються до значень за замовчуванням. Подія OpenCart розширення також видаляється (в OpenCart 4 — його події та стартова дія, яка пропускає вебхук і URL повернення в режимі обслуговування). Якщо Delete data on uninstall увімкнено, видаляються інші налаштування (назва, опис, режим, ключі, секретний хеш, варіанти оплати, автозавершення, перемикач журналу налагодження) та журнал. Якщо його вимкнено, вони зберігаються для пізнішого повторного встановлення. Записи про платежі та повернення Flutterwave завжди зберігаються, тож замовлення, оплачені раніше, можна повернути й після повторного встановлення. Наявні замовлення зберігають свої примітки про оплату.
В OpenCart 4, щоб видалити також файли розширення, після видалення перейдіть до Extensions > Installer і натисніть Uninstall (помаранчева кнопка −) поруч із VibeFox Flutterwave Payment у списку встановлених розширень, потім Delete (червона кнопка з кошиком), щоб видалити завантажений пакет.
Flutterwave є торговельною маркою її власника. Це розширення не пов'язане з Flutterwave і не схвалене Flutterwave.
