VibeFox PayU for PrestaShop — ヘルプ
要件
PrestaShop: 8.0 から 9.x。
PHP: 8.0 以降。モジュールは古い PHP バージョンへのインストールを拒否します。
通貨: PLN、EUR、CZK、HUF、RON、BGN、GBP、USD、CHF、DKK、NOK、SEK、UAH のいずれか。この通貨は PayU で貴店の POS に対しても有効化されている必要があります。その他の通貨の場合、チェックアウトで支払いオプションは表示されません。
ショップへのインターネット接続: PayU は支払い通知をショップに送信するため、ショップはインターネットから到達可能でなければなりません(HTTP 認証やファイアウォールの背後にはないこと)。通知がなくても、購入者が PayU から戻った際に支払いは確認されます。
PayU アカウント: 貴店の POS の 4 つのキーが必要です: POS ID、Second key (MD5)、OAuth client_id、OAuth client_secret。これらは PayU の加盟店管理画面の Online payments > My shops > your shop > Points of sale (POS) > your POS > Configuration keys にあります。サンドボックスのキーは、別の PayU サンドボックスアカウントで取得します。
VibeFox ライセンスキー: vibefox.net で購入します。1 つのキーは 1 つのドメインで使用できます。
インストール
1. 管理画面で Modules > Module Manager を開き、Upload a module をクリックします。モジュールの ZIP ファイルを選択してください。
2. アップロードが完了したら Configure をクリックするか、後でモジュール一覧から VibeFox PayU Payment を探して Configure をクリックしてください。
3. Configure ページ上部のライセンスブロックにある License key に VibeFox ライセンスキーを入力し、Activate をクリックしてください(ライセンスキーを参照)。
4. Sandbox のキー 4 つと Live のキー 4 つを入力してください(設定を参照)。PayU で通知 URL を設定する必要はありません。
5. Enable/Disable を有効にして Save をクリックしてください。テスト決済を行うまで Test Mode は有効のままにし、その後、無効にして Live キーで実際の決済を受け付けてください。
インストール時に、モジュールは 2 つの注文ステータスを作成します: Awaiting PayU payment confirmation と PayU payment on hold。PrestaShop は、すべての通貨、国、顧客グループに対して新しい決済モジュールを有効にします。Payment > Preferences で制限することができます。
設定
すべての設定はモジュールのページにあります: Modules > Module Manager > VibeFox PayU Payment > Configure。各セクションには個別の Save ボタンがあり、ページ全体が保存されます。フィールドの上には、サンドボックスモードが有効な間(サンドボックス(テスト)モードが有効です: 決済は PayU のサンドボックスに送られ、実際の料金は請求されません。テストモードで支払われた注文は発送しないでください。)、現在のモードの 4 つのキーのいずれかが欠けている場合、PayU がショップのデフォルト通貨を受け付けない場合に警告が表示されます。後の 2 つの場合、PayU はチェックアウトに表示されません。
保存時、すべてのキーからスペースと改行が削除されます。PayU の管理画面からコピーすると、しばしばこれらが含まれるためです。空の Title は保存されません: ページには 決済方法のタイトルを入力してください。 と表示されます。
PayU
Enable/Disable: Enable PayU payment gateway で支払いオプションを有効または無効にします。デフォルト: 無効。
Title: 購入者に表示される決済方法のタイトルです。注文に保存される決済方法名にもなります。デフォルト: PayU。必須。
Description: チェックアウトで購入者に表示される決済方法の説明です。デフォルト: Pay securely via PayU.
API 認証情報
キーは PayU の加盟店管理画面にあります: Online payments > My shops > your shop > Points of sale (POS) > your POS > Configuration keys。サンドボックスのキーは、別の PayU サンドボックスアカウントから取得します。モードの 4 つのキーはすべて入力する必要があります。
Test Mode: PayU のサンドボックスと、以下の Sandbox キーを使用します。実際の料金は請求されません。有効な間、購入者には支払いオプションの下に サンドボックスモード: 実際の決済は行われません。 と表示されます。実際の決済を Live キーで受け付けるには無効にしてください。デフォルト: 有効。
Live POS ID: 本番環境の POS の POS ID(merchantPosId)です。
Live Second Key (MD5): PayU 通知の署名を検証するために使用します。
Live OAuth Client ID: POS の OAuth client_id です。
Live OAuth Client Secret: POS の OAuth client_secret です。
Sandbox POS ID: PayU サンドボックスの POS の POS ID です。
Sandbox Second Key (MD5): PayU サンドボックス通知の署名を検証するために使用します。
Sandbox OAuth Client ID: サンドボックス POS の OAuth client_id です。
Sandbox OAuth Client Secret: サンドボックス POS の OAuth client_secret です。
保存済みの Second Key とクライアントシークレットは再表示されません。フィールドは空のまま、保存済み — 変更しない場合は空のままにしてください。と表示されます。変更する場合にのみ新しい値を入力してください。POS ID と client ID は、保存されたとおりに表示されます。
Clear saved secrets: シークレットにチェックを入れて Save をクリックすると削除されます。フィールドが空の場合は、保存済みの値が保持されます。
すべての決済は、その環境を記憶します。決済の通知、ステータス確認、返金は、常にその環境のキーを使用するため、モードを切り替えた後も以前の決済は引き続き機能します。サンドボックスのキーで署名された通知が本番決済に受け入れられることは決してなく、逆も同様です。
決済通知
Notification URL: PayU が通知を送信する宛先アドレスを表示します。フレンドリー URL の場合、https://your-shop/module/wcp_payu_payment/webhook のような形になり、言語コードが付く場合もあります。モジュールはすべての決済とともにこれを PayU に送信するため、PayU の管理画面で設定する必要はありません。インターネットから到達可能であることを確認してください(ファイアウォールや HTTP 認証でブロックされていないこと)。ショップがメンテナンスモード中でも通知は機能し、ショップの国別制限によってブロックされることもありません。
詳細設定
Receive payments automatically: 確認待ちの決済を自動的に受け取ります。これは、PayU の管理画面で貴店の POS の自動受け取りがオフになっている場合にのみ意味があります。その場合、決済は確認待ち(WAITING_FOR_CONFIRMATION)になります。このオプションが有効な場合、モジュールはそのような決済を直ちに受け取り、PayU が決済完了と報告した時点で注文を作成します。無効な場合、または受け取りに失敗した場合、注文は Awaiting PayU payment confirmation で作成され、注文の PayU ブロックにあるボタンで決済を受け取るかキャンセルします。デフォルト: 有効。
Logging: 技術的なイベント(カートと注文の番号、PayU 注文 ID、ステータス、エラー。キーや個人データは含みません)を、モジュールフォルダ内の logs/wc_pu_debug.log.php に書き込みます。このファイルは Web から開くことはできません。エラーは常に記録されます。その他のイベントは、このオプションが有効な間のみ記録されます。デフォルト: 無効。
Log: ログのサイズと最新のエントリを表示します。Clear log をクリックすると内容が消去されます。
Delete data on uninstall: モジュールをアンインストールすると、モジュールの設定とログを削除します。注文とその決済データ(PayU のトランザクション、返金、注文ステータス)は決して削除されません。デフォルト: 無効。
チェックアウト
決済の段階で、購入者は支払いオプション(デフォルトは PayU)を選択し、説明と注記 PayU に移動して決済を完了します(BLIK、銀行振込、カードなどの方法)。 を確認します。確認後、モジュールはカートの通貨でカート合計金額に対する PayU 注文を作成します。説明は Cart #、カート番号、およびショップ名で構成され、商品、配送、ギフトラッピングも PayU ページに表示されるよう渡されます。購入者のメールアドレス、名前、電話番号が PayU に渡されます。PayU ページの言語は、PayU が対応している場合はショップの言語に従い、対応していない場合は英語になります。購入者は PayU ページに移動し、そこで方法を選んで支払います。この時点では、まだ注文は存在しません。
各決済の試行には、専用の PayU 注文が作成されます。購入者が再度試行すると、カートの前回の未完了の PayU 決済は PayU でキャンセルされるため、古い決済リンクから二重に支払われることはありません。前回の決済がすでに支払い済みだったことが判明した場合は、新しい決済ではなく注文が作成されます。
ショップに戻るだけでは、注文が支払い済みになることはありません。注文は、PayU が確認した後にのみ支払い済みとしてマークされます。決済環境の Second Key で署名された通知によるか、購入者が戻った際にサーバー側で PayU 注文のステータスを確認することによって行われます(カートごとに最大 10 秒に 1 回)。PayU 注文はこのカートのために作成されている必要があり、金額と通貨が一致している必要があります。モジュールは以下の PayU ステータスを処理します:
確認済みの決済の後、購入者には標準の注文確認ページが表示されます。確認待ちまたは保留中の注文の場合、ページには お支払いを確認しています。確認が完了次第、メールをお送りします。 が追加されます。その後、このような注文の決済がキャンセルされた場合、ページには PayU の決済が完了しませんでした。この注文についてお問い合わせください。 と表示されます。
購入者が戻った時点で PayU がまだ決済を確認していない場合、Payment confirmation ページに PayU からの決済確認をまだ受け取っていません。決済が中断された場合は、もう一度お試しください:(または、PayU がエラーを報告した場合は 決済が完了しませんでした。もう一度お試しください:)と表示され、Pay again と Check again のボタンが表示されます。通知が届くと、すぐに注文が作成されます。決済がキャンセルされた場合、購入者は 決済が完了しませんでした。もう一度お試しいただくか、別の決済方法をお選びください。 と表示されたチェックアウトに戻ります。カートは保持されます。
PayU が決済を開始できない場合、購入者は 決済エラーです。もう一度お試しいただくか、別の決済方法をお選びください。 と表示されたチェックアウトにとどまります。技術的な理由はログに記録されます。現在のモードのキーが欠けている場合、メッセージは 決済ゲートウェイが正しく設定されていません。管理者にお問い合わせください。 になります。
決済と確認の間にカートのバウチャーが無効になった場合、そのバウチャーは注文から削除されます。購入者は割引価格で支払ったため、注文はバウチャー名を記したメモとともに PayU payment on hold に移行します。
購入者は、貴店のチェックアウトではなく PayU のページで決済方法を選択します。モジュールには、ショップ内のカードフォーム、保存済みカードやワンクリック決済、定期購入、PayU の分割払いやクレジットウィジェットはありません。環境ごとに 1 つの POS を使用します。
注文と返金
注文ステータス
まだ注文はありません: 購入者は PayU に送られましたが、まだ支払いをしていないか、PayU がまだ決済を確認していません。カートのみが存在します。
Payment accepted: 決済が確認されました。決済は PayU 注文 ID をトランザクション ID として記録され、メモには PayU 注文 ID、金額、環境(サンドボックスまたは本番)が表示されます。
Awaiting PayU payment confirmation: 決済は承認され、あなたの対応を待っています(自動受け取りがオフ、または受け取りに失敗)。まだ決済は記録されていません。
PayU payment on hold: 支払われた金額または通貨がカートと一致しなかった(注文は支払い済みとしてマークされません)、バウチャーが削除された、確認待ちの決済の金額が異なっていた、またはキャンセルされた注文に対して決済が完了した(決済は記録されます)。メモにどの場合かが記載されています。注文を確認して処理するか、決済を返金してください。
Payment error: 確認待ちの注文の決済がキャンセルまたは拒否されました。
Refunded: 決済はモジュールを通じて全額返金されました。
すべての通知は一度だけ処理されます。繰り返しの通知によってメモが追加されたり、注文が再び変更されたりすることはありません。すでに支払い済みまたは返金済みの注文に対して別の決済が完了した場合、メモが PayU の管理画面で返金するよう求めます。すでに支払い済みまたはクローズ済みの注文に対する確認待ちの決済は、二重に料金を徴収されないよう自動的にキャンセルされます。
PayU 決済ブロック
注文ページには、PayU 注文 ID、extOrderId、PayU ステータス、支払い済み金額と返金額、サンドボックス決済用の Sandbox バッジ、返金履歴、注文の PayU notes を含む PayU payment ブロックが表示されます。このブロックの操作には注文を編集する権限が必要です。Modules ページへのアクセスは必要ありません。
確認待ちの決済
確認待ちの決済がある注文では、ブロックに Receive PayU payment (waiting for confirmation) と Cancel PayU payment (release the funds) が表示されます。質問を確認すると、そのアクションは決済環境のキーを使って PayU に送信され、あなたの名前とともにメモに追加されます。新しい PayU ステータスはすぐに適用されます: 受け取った決済は注文を Payment accepted に、キャンセルされた決済は Payment error に設定します。
返金
PayU payment ブロックで金額を入力し(まだ返金されていない金額が自動入力されます)、必要に応じて理由を入力して、Refund via PayU をクリックします。確認の質問 この金額を PayU 経由で返金しますか? この操作は取り消せません。 を確定してください。全額返金と一部返金に対応しています。返金は、実際に支払われた PayU 注文に対して、決済環境のキーを使って送信されるため、そのキーが設定されている必要があります。返金は PayU が請求した金額と通貨で行われます。そのため、金額または通貨の不一致があった後は、注文合計ではなく、購入者が実際に支払った金額まで返金できます。理由は返金の説明として送信されます。PayU が返金を拒否した場合、ブロックに PayU のエラーが表示され、返金は記録されません。全額返金すると注文は Refunded に設定されます。一部返金ではステータスは変わりません。
PayU の返金は非同期です。モジュールは、PayU の返金 ID とステータスを含むメモをすぐに追加します。最終ステータスは後から PayU の通知として届き、メモと返金履歴に追加されます。PayU が返金をキャンセルした場合、メモには購入者に金額が返却されていないことが記されており、その金額は再度返金できます。
モジュールは、クレジットスリップを作成しません。注文ページの標準の PrestaShop の返金ボタンでは、PayU を通じて返金されません。
ライセンスキー
モジュールは、vibefox.net で取得した VibeFox ライセンスキーで動作します。ライセンスブロック License — VibeFox PayU Payment は、Modules > Module Manager > VibeFox PayU Payment > Configure の最初のブロックで、設定の上にあります。キーを License key に入力し、Activate をクリックしてください。その後、ブロックにはキーがマスクされた状態で表示され、ステータス(ライセンスの有効期限の日付やドメインなど)と、ステータスを再確認する Check now、別のキーを入力する Change key、このショップからキーを削除する Remove key のボタンが表示されます。その下には Product: presta-payment-payu の行と、vibefox.net アカウントを開く Manage licenses and domains in your account のリンクがあります。キーを変更できるのは、このモジュールの Configure 権限を持つ従業員のみです。ブロックの表示テキストは管理画面の言語に従います(英語とロシア語を含みます)。
キーが受け入れられない場合、ブロックにその理由が表示されます。例えば Key not found、This key belongs to another product、Domain limit reached、または日付付きの License expired on です。ショップのアドレスを変更した後、またはアカウントでドメインの枠を解放した後は、Check now をクリックしてください。ライセンスサーバーに接続できない場合、モジュールは最後に確認されたステータスで動作を続けます。
1 つのキーは 1 つのドメインで機能します。マルチストア構成の場合も、メインショップのドメインです。ショップからキーを削除しても、ドメインの枠は解放されません。枠は vibefox.net アカウントで解放してください。
有効なキーがない場合、チェックアウトで購入者に PayU は表示されません。それでも決済が開始された場合、購入者には This payment method is not available. Please choose another one. と表示されます。PrestaShop のストアフロントは、バックオフィスにログインしていることを認識しないため、決済方法はあなたに対しても非表示になります。購入前にモジュールを設定することはできますが、チェックアウトでテストすることはできません。Modules > Module Manager の Alerts タブにリマインダーが表示されます。既存の注文には影響ありません。すでに開始された決済は通知によって引き続き確認され、返金も機能します。
ライセンスの有効期限が切れてもモジュールは動作を続けますが、アップデートとサポートには更新が必要です。バックオフィスで作業している間、ステータスは自動的に再確認されます。キー入力後の最初の 14 日間は 1 日に 1 回、その後は週に 1 回です。cron ジョブは不要です。モジュールのアンインストールまたはリセットでは、常にライセンスキーとライセンスステータスが削除されます。
トラブルシューティング
チェックアウトに PayU が表示されない: ライセンスが有効であること、Enable/Disable が有効であること、現在のモードの 4 つのキーがすべて入力されていることを確認してください。サンドボックスモードでは Sandbox キー、ライブモードでは Live キーです。カートの通貨が対応通貨のいずれかであることを確認してください。Payment > Preferences で、カートの通貨、購入者の国、購入者のグループに対してモジュールが許可されていることを確認してください。設定ページには、キーが欠けている場合やショップの通貨が対応していない場合に警告が表示されます。
決済は完了したが、注文が作成されない: PayU がまだ通知を送信しておらず、戻りページでのステータス確認でも完了した決済が確認されませんでした。設定に表示されている通知 URL がインターネットから到達可能か確認してください。Logging を有効にすると、何が届いたかを確認できます。購入者は Payment confirmation ページで Check again をクリックすることもできます。
通知の応答が Invalid signature: 通知が、どちらの環境の Second Key でも署名されていません。Live Second Key (MD5) と Sandbox Second Key (MD5) を確認してください。応答 Invalid signature for this payment は、通知が決済とは別の環境のキーで署名されたことを意味します。
通知の応答が Ignored: unknown PayU order: この PayU 注文は、このショップによって作成されたものではありません(例: 同じ POS の別のショップ)。PayU は再試行を停止します。
通知の応答が Busy, retry later: 同時に別のリクエストによってカートが確認されていたか、注文を作成できませんでした(例: モジュールが無効になっている)。PayU は通知を再送します。Logging を有効にして理由を確認してください。
通知 URL をブラウザで開くと POST expected と表示される: これは正常です。この URL は PayU からの通知のみを受け付けます。
購入者が PayU を選択すると Payment error が表示される: Logging を有効にし、モジュールページの Log フィールドを確認してください。ログには HTTP コードと PayU ステータスが表示されます。PayU で認証できませんでした(OAuth client ID / secret を確認してください)。 は、現在のモードの OAuth キーが正しくないことを意味します。
注文が PayU payment on hold になっている: PayU payment ブロックのメモを読み(注文ステータスを参照)、注文を処理するか決済を返金してください。
注文が Awaiting PayU payment confirmation になっている: 貴店の POS で自動受け取りがオフになっており、決済はあなたの対応を待っています。PayU ブロックの Receive PayU payment または Cancel PayU payment を使用してください。
返金に失敗する: この注文には完了した PayU 決済がありません。返金を処理できません。 は、PayU がこの注文の決済をまだ完了していないことを意味します。Sandbox キーまたは Live キーがないというメッセージは、その環境で決済が行われており、そのキーが設定されていないことを意味します。キーを入力して再度お試しください。
アンインストール
Modules > Module Manager に移動し、VibeFox PayU Payment の横にあるメニューを開いて Uninstall を選択します。このモジュールのライセンスキーとライセンスステータスは常に削除されます。キャッシュされた PayU のアクセストークンは常に削除されます。Delete data on uninstall が有効な場合、モジュールの設定とログは削除されます。無効な場合、後で再インストールするためにすべての設定が保持されます。PayU のトランザクションと返金、および注文ステータス Awaiting PayU payment confirmation と PayU payment on hold は常に保持されるため、以前に支払われた注文は再インストール後も返金できます。既存の注文は、決済のメモとトランザクション ID を保持します。
PayU は、それぞれの所有者の商標です。本モジュールは PayU と提携しておらず、PayU による承認もされていません。
