2016-09-15 4 views
0

私はSage Pay Directをウェブサイトに統合しています。現在、私はテストモードですべてを実行しています.3D Secureを使用して支払いをテストしない限り、すべて正常に動作します。セイジペイテストサーバーが3Dセキュアページを読み込まない

私はここセージ有料テストカードからの最初のカードの詳細情報を使用しています:

http://www.sagepay.co.uk/support/12/36/test-card-details-for-your-test-transactions

これは私のサイトはセージペイ独自の3DセキュアページをロードするIFRAMEを含むその3Dセキュアページに移動する原因となりますテストサーバーから取得します。しかし、それはちょうど完全に空です。ソースコードのない空白のページです。ここで

はセージペイ3Dセキュアページをロードするために、自動的に自己提出する私のiframeです:

<html> 
<head> 
    <title>3D-Secure Authentication</title> 
</head> 
<body> 
    <form action="https://test.sagepay.com/mpitools/accesscontroler?action=pareq" method="post"> 
     <input type="hidden" name="MD" value="2015466070671410" /> 
     <input type="hidden" name="PaReq" value="eJxVkttygjAQhu/7FAwPQAhyEGeNY u0paMto06ntynsCFM5BVB8 yYIteZq/83my 6fwKLLjtoJRZ0W Vynhqkv2APCmSwwbrmB9TSeK5bJr39ie/4nmt6putRm5o6g3C5xYrBAGKSY1Ago5QEESU8bxjwqHoM3pntU9fzgAwSMhTBijlT35LUsdf4iXldQK5pyHmGbJ/gR/ct0viAW6yRS KLKNoSSL8NUdHmjbiwqeUGQW04siSpwerwerilnhJzPZ6MYCBinTZofjKjICBBVBOTWZNiqqJbQLo1ZEofPXvfmJCe ro5JWp2yjfj5Wn2uolQExb5BJa1zTp45GpzPqzlT/fR54prphlt3PNCgo1SXLu63/KZDeC8yjcaBRAXZlkaM6BOQvhhjriO3UK4X8om3CQF6uUkBuwzy9Kv jRlpKlfV9pHipdIq61OyBSgBRtWR4VTJ8ABndfYxf1D28kg==" /> 
     <input type="hidden" name="TermUrl" value="https://www.example.com/payment/auth-return" /> 
    </form> 

    <script> 
     document.forms[0].submit(); 
    </script> 
</body> 
</html> 

フィールドのデータは、セージペイによって返さ以前に作られた要求、から来ています。あなたが見ることができるように、私は次のフィールドを送っています:

  • MD
  • PaReq
  • TermUrl

私はSage Pay Direct Integration Guideドキュメントを100回読んだし、これは正しいように思われ、大文字と小文字を区別した正しい名前のフィールド名が正しいです。

  • この

    は私が成功し
  • 私は(新旧)2つのウェブサイトを比較した何年か前に前V2.2.3でこれを実装している
  • セージ有料プロトコルV3.00を使用していると、彼らは同じように見えます一般的な統合はあなたのPaReqフィールドにスペースを持っている

答えて

1

正しいよう

  • 支払いは、3Dセキュアの仕事に100%を使用していません。 'em'を '+'で置き換えてください....

  • +0

    私はすでに 'urlencode()'にラップしてみましたが、違いはありませんでした。 '+'のためのまっすぐな 'str_replace()'だけが動作します。ありがとう! – BadHorsie