戻る

VibeFox Flutterwave for OpenCart — ヘルプ

要件

OpenCart: 3.0.x(3.0.5.0 でテスト済み)または 4.0.2 以降(4.1.0.3 でテスト済み)。

PHP: 8.0 以降。

Flutterwave アカウント: Flutterwave ダッシュボードの Settings、API keys にある、Flutterwave アカウントのシークレットキーが必要です。テストモードでは FLWSECK_TEST-…、ライブモードでは FLWSECK-… を使用します。使用するのはシークレットキーのみです。公開キーと暗号化キーは不要です。また、任意のシークレットハッシュを使ってウェブフックを設定します(設定を参照)。

通貨: 注文は常に注文の通貨で請求されます。この拡張機能自体は国や通貨を制限しません。アカウントが通貨に対応していない場合、Flutterwave がエラーを表示します。Geo Zone と Total を使うと、Flutterwave を提供する場所を制限できます。

VibeFox ライセンスキー: vibefox.net で購入します。1 つのキーは 1 つのドメインで使用できます。

インストール

ダウンロードは、両方の OpenCart バージョン用のパッケージを含む 1 つの zip ファイルです。コンピューターで解凍してください。内容は 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(鉛筆ボタン)をクリックして設定ページを開きます。ページ上部のライセンスブロックにある License key に VibeFox ライセンスキーを貼り付け、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. ライセンスキー、シークレットキー、ウェブフックは、OpenCart 3 の手順 3 から 5 と同じように入力します。設定ページとそのフィールドは両方のバージョンで同じです。ウェブフックの 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 で、このセクションの Webhook URL に表示されている 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 のような形式です。URL は貴店のアドレスから作成されます。HTTPS でインターネットから到達可能である必要があります。設定に表示されているとおりに URL をコピーしてください。拡張機能は次のイベントに反応します:

charge.completed: 請求が完了しました。拡張機能は、決済が行われたモードのシークレットキーで Flutterwave からトランザクションを再取得し、その結果を適用します。

その他のイベントは無視されます。

Secret Hash: ウェブフックのシークレットハッシュです。Flutterwave ダッシュボードのウェブフック設定の値と一致している必要があります。Flutterwave はすべてのウェブフックにこの値を付けて送信し、テストモードとライブモードで同じ値を使用します。有効なシークレットハッシュがないウェブフックは拒否されます。ウェブフックがない場合、決済は購入者が貴店に戻ったときにのみ確認されます。

支払い

Payment Options: Flutterwave のページに表示する決済方法を、カンマ区切りで指定します。例:card、banktransfer、ussd、mobilemoney。アカウントで有効なすべての方法を表示するには空欄のままにします。保存時に一覧は整理されます(小文字化、重複の削除)。

Autocomplete Orders: 支払い済みの注文は、Paid Order Status ではなく Complete 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: デバッグ用の Flutterwave API イベントを、OpenCart のログフォルダ(storage/logs)内の flwv_debug.log.php に記録します。このファイルはウェブから開くことはできず、5 MB に達すると 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 は、チェックアウトの注文を更新するため、新しい試行は同じ注文を決済します。各試行には独自の参照番号が付けられます。新しい決済を行う前に、この注文および同じカートの他の注文について、過去 24 時間に開始された未完了・保留中の決済が Flutterwave に照会されます。そのいずれかが支払い済みであれば、その注文を確認し、購入者は再度支払う代わりに完了ページに移動します。同じカートの別の注文がすでに Flutterwave で支払い済みの場合も、新しい決済は開始されません。後から支払われた古い決済リンクも引き続き受け付けられます。同じカートが二重に支払われた場合(例えば、2 つのブラウザタブで)、ステータスを設定するのは最初の決済のみです。もう一方の注文はステータスなしのままとなり、支払い済みの注文には、2 回目の決済を 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 では拡張機能がそのためのスタートアップアクションを追加するからです。

この拡張機能は一回限りの決済のみに対応しています。サイト上にインラインやモーダルのチェックアウトはなく、保存済みカード、サブスクリプション、分割決済、支払いプランにも対応していません。ホスト型の決済リンクは Flutterwave API ではキャンセルできないため、古いリンクでも支払いが可能な場合があります。

注文と返金

注文ステータス

ステータスなし(missing order): 購入者は Flutterwave に移動されましたが、決済が拒否またはキャンセルされたか、Flutterwave がまだ決済を確認していない状態です。Sales > Orders では、このような注文は Order Status フィルターを Missing Orders に設定した場合にのみ表示されます。

Paid Order Status(既定値 処理中)または Complete Order Status(既定値 完了): 決済が確認されました。Autocomplete Orders がオンの場合は Complete Order Status が使われます。メモには、金額、決済方法、Flutterwave の参照番号、トランザクション、モードが表示されます。

Awaiting Payment Status(既定値 保留中): 決済がまだ Flutterwave で保留中のときに購入者が戻りました。Flutterwave が決済を確認すると、注文は支払い済みのステータスに移行します。

On Hold (Review) Status(既定値 保留中): 検証された金額または通貨が注文と一致しなかった、または注文に支払いなしのステータス(例:キャンセル)が付与された後に決済が届きました。実際に支払われた金額と通貨が記録され、メモがその内容を説明します。注文を処理するか、決済を返金してください。注文がすでに別の処理ステータスであった場合は、メモが追加されるだけです。

Failed Status(既定値 失敗): Flutterwave は、入金待ち注文の最新の決済試行が失敗またはキャンセルされたと報告しました。メモに理由が表示されます。以前の試行や支払い済みの注文は変更されません。

Refunded Status(既定値 返金済み): 決済が拡張機能を通じて全額返金されました。

すでに支払い済みの注文に 2 件目の決済が届いた場合、注文は変更されません。メモで、重複分を 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 が返金を拒否した場合、タブにエラーが表示され、返金は記録されません。成功した返金は、返金 ID とステータス(完了、または Flutterwave が報告したステータスで開始)とともに、返金履歴とメモに追加されます。全額返金は、購入者に通知せず、商品を在庫に戻さずに、注文を Refunded Status に設定します。これは手動でのステータス変更と同様です。一部返金ではステータスは変わりません。返金は、Flutterwave が決済を確認した後に利用できます。

Sales > Returns での商品返品は、Flutterwave を通じた返金を行いません。Flutterwave ダッシュボードで行われた返金は OpenCart に同期されません。必要に応じて、注文ステータスを手動で更新してください。

ライセンスキー

この拡張機能は、vibefox.net で取得した VibeFox ライセンスキーで動作します。ライセンスブロック License — VibeFox Flutterwave Payment は、Extensions > Extensions > Payments > VibeFox Flutterwave Payment > Edit の最初のブロックで、設定の上に表示されます。License key にキーを貼り付け、Activate をクリックします。その後、ブロックにはキーがマスクされた状態で表示され、ステータス(例:ライセンスの有効期限の日付と貴店のドメイン)と、ステータスを再確認するための Check now、別のキーを入力するための Change key、このストアからキーを削除するための Remove key のボタンが表示されます。その下には、Product: opencart-payment-flutterwave の行と、vibefox.net のアカウントを開くリンク Manage licenses and domains in your account があります。キーを変更できるのは、拡張機能に対する Modify 権限を持つ管理者ユーザーのみです。ブロックのテキストは管理画面の言語に従います(英語とロシア語が含まれます)。

キーが受け付けられない場合、ブロックに理由が表示されます。例:Key not found、This key belongs to another product、Domain limit reached、または License expired on とその日付。ストアのアドレスを変更した後、またはアカウントでドメインの枠を解放した後は、Check now をクリックしてください。ライセンスサーバーに接続できない場合、拡張機能は最後に確認されたステータスで動作を続けます。

1 つのキーは 1 つのドメインで使用できます。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 日間は 1 日 1 回、その後は週 1 回です。cron ジョブは必要ありません。拡張機能をアンインストールすると、ライセンスキーとライセンスステータスは常に削除されます。

トラブルシューティング

チェックアウトに Flutterwave が表示されない: ライセンスが有効か、Enable/Disable がオンか、現在のモードのシークレットキーが入力されていてモードと一致しているか(テストモードではテストキー、ライブモードではライブキー 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 タブのメモを確認し(注文ステータスを参照)、その後注文を処理するか、決済を返金してください。

タブに返金フォームがない: タブに理由が表示されます。決済がまだ確認されていない、全額返金済み、ユーザーグループに拡張機能を変更する権限がない、または決済のモードのシークレットキーが設定されていない、のいずれかです。

モードに関するメッセージで返金が失敗する: 決済はテストまたはライブモードで行われ、そのモードのシークレットキーが設定されていません。キーを入力して、もう一度お試しください。

Refund answers Another operation on this payment is running: 同じ注文の別の返金が、その時点で送信中でした。少し待ってから返金履歴を確認し、必要に応じて再試行してください。

開発者向けに、この拡張機能は OpenCart のイベント flwv_payment_request(Flutterwave に送信されるデータ)と flwv_currency_decimals(通貨の精度)をトリガーします。

アンインストール

Extensions > Extensions に移動し、タイプ Payments を選択して、VibeFox Flutterwave Payment の横にある Uninstall(赤い − ボタン)をクリックします。この拡張機能のライセンスキーとライセンスステータスは、常に削除されます。OpenCart は、拡張機能自身の設定を常に削除します。Enable/Disable、Sort Order、Geo Zone、Total、および Orders セクションの注文ステータスです。これらは再インストール時に既定値に戻ります。拡張機能の OpenCart イベントも削除されます(OpenCart 4 では、そのイベントと、メンテナンスモードでもウェブフックと戻り URL を通過させる起動時アクションも削除されます)。Delete data on uninstall がオンの場合、その他の設定(タイトル、説明、モード、キー、シークレットハッシュ、支払いオプション、自動完了、デバッグログのスイッチ)とログが削除されます。オフの場合は、後で再インストールする際のために保持されます。Flutterwave の決済と返金の記録は常に保持されるため、以前に支払われた注文は再インストール後も返金できます。既存の注文は、決済メモを保持します。

OpenCart 4 で拡張機能のファイルも削除するには、アンインストール後に Extensions > Installer に移動し、インストール済みの拡張機能の一覧で VibeFox Flutterwave Payment の横にある Uninstall(オレンジ色の − ボタン)をクリックしてから、アップロードしたパッケージを削除するために Delete(赤いゴミ箱ボタン)をクリックしてください。

Flutterwave は、それぞれの所有者の商標です。本拡張機能は Flutterwave と提携しておらず、Flutterwave による推奨も受けていません。