4

皆さん、こんにちは

背景:

支払いに PayPal オプションがあるカスタム ショップを構築しました。一般に、PayPal オプションは次のように機能します。

  1. ユーザーが商品をショッピング カートに追加します (在庫がある場合)。
  2. ユーザーが配送先を選択
  3. ユーザーが「今すぐチェックアウト」スタイルのボタンをクリック
  4. ユーザーがログインするか、配送/請求の詳細を入力します
  5. ユーザーには、カードの詳細を入力するか、[PayPal で支払う] ボタンをクリックするための支払いページが表示されます。

「PayPal で支払う」ボタンは、私が採用したいものです。現在、ユーザーのカートからすべてのアイテムを取得し、ページにエコーされる PayPal フォームに変換する php 関数があります。このフォームには、アイテム、数量、サイズ、送料、ビジネスの詳細、返品/キャンセル/IPN URL など、すべての PayPal 情報が含まれています。

問題:

ユーザーが特定の日にショッピング カートにデータを入力し、支払いページまでチェックアウト手順を実行すると、PayPal フォームが新たに生成された状態でそこに置かれます (アイテムの価格と数量を含め、現在は問題ありません)。

彼らは、「PayPal で支払う」ボタンをクリックせずにコンピューターから離れます。数日かけて考えるかもしれません。その間、カート内の商品の価格/在庫が変更されます。

未完成のカートを 24 時間後に削除するように設定しても、ユーザーは既に PayPal フォームをロードしているため、数か月後でも古い在庫レベルと価格を使用して [PayPal で支払う] をクリックできます!

ソリューション:

ここにはいくつかのオプションがあり、それぞれに対する提案を受け付けています (または実際にはより良い解決策です!)

  1. 支払いページとカート ページにひどい「Refresh」メタ タグを設定して、それらが毎日更新されるようにし、ページが読み込まれる前に php で在庫/価格をチェックします。このようにして、在庫または価格変更された場合、ユーザーには最新の価格が表示されます。(これは私の好みのオプションではありません)

  2. 支払いページで PayPal フォームを生成する代わりに、「PayPal で支払う」ボタンを使用して、必要なすべてのチェックを行う別の php ページ (「process_paypal.php」など) にユーザーを誘導し、問題がある場合はメッセージを送信できます。ユーザーに送信されます。(ここまでは順調ですね)。次に(これは私が苦労している部分です)、すべて問題なければ、フォームを生成して自動的に送信し、ユーザーを PayPal Web サイトにリダイレクトしてログインさせます (jQuery またはJavascript ですが、可能であれば、そのようなものが存在する場合は PHP ソリューションを使用したいと思いますか?私は cURL にあまり詳しくないので、それが使用されているかどうかはわかりません)

  3. 教えてください?!:)

これについてあなたができるどんな助けにも感謝します。

ベン・エイブリー

4

1 に答える 1

1

個人的には、この場合、カートが存在しない場合に購入を拒否するためにペイパルのコールバック URL を使用しました。

システムにカートが存在する場合にのみ、IPN コールに応答して成功します。それ以外の場合は、失敗で応答します。

正常な応答が得られない支払いを拒否する設定が PayPal にあると思います。

編集:コードを見ただけです(私がそれをしてからしばらく経ちました)。私たちが最終的に行ったのは、IPN 呼び出しに基づいて PayPal API を使用して払い戻しをトリガーすることでした。私の意見では、顧客に料金が発生しないため、これを行うことは完全に受け入れられます.

于 2012-06-01T10:06:30.690 に答える