問題タブ [worldpay]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-mvc-3 - ASP.NET MVC 3 - HttpContext 応答の置き換えが機能しない
最近MVC3を使用するようにアップグレードされたNopcommerceを使用しています-以前はWebフォームを使用していました。Worldpay の (支払いゲートウェイ) ホスト サイトに接続しようとしています。プロセスは少し複雑ですが、基本的にフォームを Worldpay に送信する必要があり、ユーザーはホストされているサイトにリダイレクトされ、クレジット カードの詳細などを入力します。
Nopcommerce は、Post メソッドを使用してこれを処理します。このメソッドは、サーバー側で、投稿する必要があるフォームを構築し、httpcontext 応答を構築済みの HTML に置き換えます。
これは Webforms バージョンでは正常に機能しますが、MVC バージョンでは機能しません。エラーはなく、すべてが正しく機能しているように見えます。ただし、処理は続行され、実行はサービス層 (このメソッドがある層) からコントローラーに戻り、次のリダイレクトが発行されます。
サーバー側での応答の変更に関して、MVC は Web フォームとは異なる動作をしますか? 次のコードを試してみたところ、worldpay が実際にヒットし、期待どおりの応答を送信していることを確認できました。
注: 上記の例では、HttpContext がサービスに挿入されています。HttpContext.Current を使用しても同じ結果が得られます。
アップデート:
もう少し掘り下げてみると、任意のコントローラーから応答ストリームに書き込み、応答を終了すると、空白の (長さ 0 の応答) 画面が表示されることがわかります。以下は、上記の問題を引き起こすホームコントローラーのインデックスアクションです。私が作成した使い捨てプロジェクトの同じコードは、完全に機能します...
iframe - いくつかの制限があるiframeからの脱却
私たちは支払いプロバイダーとしてWorldpayを使用しており、Worldpayの一部としてPayPalを実装しています。つまり、Worldpayとのみ統合し、PayPal統合を処理します。
ただし、これにはかなりの問題があります。
支払いフォームはiframeで表示されますが、PayPalではフレーム化が許可されていません。
X-Frame-Originヘッダーを使用してiframeをブロックします。
シンプルで、JavaScriptを使用してペイパルを検出し、発生します。
javascriptの使用は許可されていません:(
わかりました、どうtarget="_top"
ですか?
PayPalが唯一の支払いオプションであるいくつかの支払いオプションがあります。
しかし、2つのフォームを作成するだけですか?
これは本当に遅れるところです。Worldpayは私たちのフォーム(具体的にはページの最初のフォーム)を取り、ターゲットと他のいくつかの属性を更新し、それをページ全体にラップします。つまり、サポートされていないネストされたフォームがあります。
さらに、これは、2番目のフォームを手動で作成する必要があることを意味します。つまり、worldpayが生成するフォームで物事を変更すると、壊れてしまいます。
これに対する解決策はありますか?
magento - MagentoのWorldpay拡張機能
Magentoストアをセットアップし、次の拡張機能をインストールしました。
http://www.magentocommerce.com/magento-connect/worldpay-extension.html
あなたが行くとき:
[管理]>[構成]>[支払い方法]
このphpエラーメッセージが表示されます:
致命的なエラー:クラス'Phoenix_Worldpay_Helper_Data'が<私のウェブサイト>/app/Mage.phpの516行目に見つかりません。
私がヘルパークラスについて読んだことから、ヘルパークラスが入っているディレクトリを探しています。
ヘルパークラスが存在し、適切な場所にあります。
/app/code/community/Phoenix/Worldpay/Helper/Data.php
Magentoコミュニティv1.6を使用しています。
誰か提案がありますか?
customization - worldpay ヘルプ ページをカスタマイズするにはどうすればよいですか?
World Pay の高度なカスタマイズに関するドキュメント (こちら) では、ほとんどの World Pay ページをカスタマイズする方法について説明しています。これまでのところ、カスタムの header.html、footer.html、stylesheet.css ファイルを作成してアップロードすることで、支払いページ、キャンセル ページ、支払い失敗ページをカスタマイズできました。また、resultC.html と resultR.html をカスタマイズして、スタイルシートと他のファイルのヘッダーとフッターを含める必要もありました。これまでのところ、これはすべて非常に単純です。すべてのファイルにはダウンロード場所が指定されており、すべて同じ場所にアップロードされます。
ここで、一番上にリンクしたドキュメントの 78 ページに、header.html のリンクに対してヘルプ ページへのリンクがどのように定義されているかが示されています。たとえば、セキュリティ リンクは次のプロパティで定義されます。
そこにリンクされているアドレスは、セキュリティのためのデフォルトのヘルプ ページの場所としてドキュメントに記載されているのと同じアドレスであるため、アップロードしたファイルの数に関係なく、カスタマイズされたバージョンにリンクすることはありません。
カスタム セキュリティ ページをアップロードし (デフォルトへのリンクはドキュメントに記載されています)、ブラウザのアドレスを変更して検索するだけでそこに移動しようとしましたが、うまくいきませんでした。
「/global3/brands/worldpay/payment/default/help_security_en.html」ではなく「help_security_en.html」へのリンクと、その他のいくつかのバリエーションへのリンクを試みました。これらのどれも機能していません。
- これらのページをカスタマイズすることは可能ですか?
- カスタマイズしたページをどこにアップロードしますか?
- カスタマイズされたページにリンクするにはどうすればよいですか?
元の Web サイトにヘルプ ページを作成して、世界の有料セクションからリンクするだけでもよいと思いますが、可能であれば、全世界の有料コンテンツを 1 か所にまとめることに固執したいと思います。
php - World Pay Payment Gateway と PHP の統合
worldpay 支払いゲートウェイの実装は、私を夢中にさせています。XML ダイレクト メソッドを使用して、php Web サイトに worldpay 支払いゲートウェイを実装しようとしています。ここのコードを使用して、すべての HTTP リクエストを処理しています。
しかし、サーバーに接続しようとすると、認証が必要であるというエラー メッセージが表示されます。次のURLに必要な詳細をすべて提供しました
$dest="https://$merchantCode:$password@secure-test.wp3.rbsworldpay.com/jsp/merchant/xml/paymentService.jsp";
curl を使用してサーバーに接続しても、URL が見つからないというエラー メッセージが表示されます。
以下は、私が使用しているcurlコードです。
適切なドキュメントがないので、それを実装した人に助けてもらいたいです。
現在、ローカルホストで PHP Web サイトをテストしています。HTTPリクエストまたはcurlが機能していないのはそのためですか
php - PHP Web サイトで worldpay の支払い応答を取得する
HTML リダイレクト メソッドを使用して、Worldpay 支払いゲートウェイを PHP e コマース Web サイトに統合しています。今のところ、GET メソッドで Worldpay の resultC と resultY html ファイルを介してトランザクションが成功したか失敗したかを正しく応答することができます。
ここに ResultY.html コードがあります
しかし、私の質問は、この方法にはトランザクションが含まれているため安全であり、この URL から取得した結果に基づいて、その特定の注文のデータベースを更新し、ユーザーにトランザクション ステータスを表示する必要があるということです。
誰かがより良い方法を持っている場合は、私に知らせてください。ありがとう。
javascript - フォーム送信時のJavaScriptロギング
私が維持/開発しているいくつかのウェブサイトでは、支払いゲートウェイとしてworldpayを使用しています。奇妙な問題を経験している人がいます。だから私はいくつかのものをログに記録しようとしましたが、実装したログは完全には機能しません。
ユーザーが経験する問題は、worldpay Webサイトにリダイレクトされることになっているため、magentoプラグインは非表示のフィールドを持つ単純なフォームを生成することです。次に、ページ読み込みイベントでフォームを送信します。フォームアクションのURLはworldpayのURLに設定されています。つまり、基本的には、注文情報がworldpayに送信されるPOSTリクエストです。
現在、一部の人々にとって、これは日常的に発生し、worldpayゲートウェイがロードされることはありません。彼らは、私たちがあなたをリダイレクトしている間、待機してくださいと言う隠されたフォームのあるページで立ち往生しています。実際にリダイレクトされる前に、人々に数分待ってもらいました。
ユーザーが3秒以上費やすたびに、そのフォームからさまざまなもののログ記録を開始することにしました。だから私はjavascriptに目を向けましたこれは私がやったことです:
それから私はこれらの行を持っています
私がやろうとしているのは、フォーム要素といくつかのブラウザー情報を取得し、3秒以上経過した場合にajaxpostリクエストを作成してサーバーに記録することです。次に、フォームを再送信します。それは私にはかなり簡単に見えますが、まだたくさんのpplがあります。worldpayにアクセスせず、スクリプトによってログに記録されない人。一部のブラウザでは、フォームを送信した後、JavaScriptが信頼できない可能性がありますか?ブラウザが新しいページの読み込みなどを期待し始める前に。
また、ajax関数がそのページで機能するために必要なコンポーネントだけを備えた縮小されたjqueryフレームワークがあります。以前に書いたものがすべてのブラウザで機能するとは限らないと思って、必死になってgithubで見つけました。しかし、それはすべて同じです。
誰かが私がここで何をすべきかについて何かヒントがありますか?たぶん、このデータまたは何かをログに記録するための別のアプローチに関するアイデアですか?
shopify - ShopifyでWorldPayトランザクションIDを予測する
ShopifyでWorldPay支払いプロセッサを使用しています。
WorldPayでトランザクションが作成されると、Shopifyでの注文番号に基づいてIDが付与されます。例えば:
- 注文番号1010の#1010.1
- 注文番号1011の#1011.1
- 注文番号1013の#1013.2
ほとんどの注文では、ドットの後の数字は「1」です。しかし、少なくとも1つは「2」です。この番号が何であるかを予測する方法、またはAPIを介して取得する方法はありますか?
xml - Worldpay ダイレクト XML
XML をhttps://secure-test.WorldPay.com/jsp/merchant/xml/paymentService.jspに送信すると:
これを実行すると、これが出力されます。
ドキュメントには、リクエスト用の IP アドレスを Worldpay アカウントに追加するように記載されていますが、これは正しく行ったと思います。
api - WorldPay「Capture」のリアルタイムAPI
私は、Shopify が「リアルタイム」API を使用して WorldPay からの支払いを取得していると信じています (WorldPays API を使用すると、これは遅延ベースで機能するようです)。Shopify API ドキュメントを確認すると、全体像ではなく一部がわかりました。
「Create a new Transaction」( ) を呼び出さなければならないことがわかります
POST /admin/orders/#{id}/transactions.xml
。私が推測するの#{id}
は認証IDです。#
and または{}
かっこは必要ですか?URL は純粋なものですか、それとも渡す
http://lumie.myshopify.com/admin/orders/#{id}/transactions.xml
必要があるショップ GUID/
コードはありますか?成功の応答メッセージは表示されますが、認証コードの期限切れなどの失敗はどうでしょうか。これらの例はありますか?