2

Sage Pay 2.23 から 3.00 へのアップグレード

私は現在Sage Pay Server PHP Kit Includes File、私のプロジェクトの 1 つで使用しています。ご存知かもしれませんが、Sage Pay は API バージョンを非推奨2.23にしているため、3.00.

誰かが興味を持っている場合は、私が使用しているファイルの変更ログ:

***************************************************************************************************
* Change history
* ==============
*
* 02/04/2009 - Simon Wolfe - Updated UI for re-brand
* 11/02/2009 - Simon Wolfe - Updated for VSP protocol 2.23
* 18/12/2007 - Nick Selby - New PHP version adapted from ASP
***************************************************************************************************

に切り替え$strProtocol="2.23"てみまし$strProtocol="3.00"たが、Sage Pay バックエンドを確認するまでは問題なく動作しているようでした。

このエラーが表示されます。 ここに画像の説明を入力

私はあなたに多くの仕事を与えていないことを知っていますが、他の誰かが私と同じライブラリを使用している可能性があります.

編集:これはライブラリ全体のペーストビンです。http://pastebin.com/91AG8nLv

4

2 に答える 2

0

問題を発見し、修正しました。これはテスト済みで、正常に動作します。

という別のファイルがありtransaction-check.php、新しいバージョンでは必須になったため、3 つのフィールドを追加する必要がありました3.00

$strDeclineCode = cleaninput($_REQUEST["DeclineCode"],"Text");
$strBankAuthCode = cleaninput($_REQUEST["BankAuthCode"],"Text");
$strExpiryDate = cleaninput($_REQUEST["ExpiryDate"],"Text");
于 2015-07-31T11:45:16.520 に答える
0

私の推測では、署名を更新していないため、トランザクションを拒否しています (改ざんされているように見えるため)。以下の値に基づいて署名を計算する必要があります (これにはいくつかの新しいフィールドが含まれます)。

{VPSTxId }+ VendorTxCode +
Status + TxAuthNo +
VendorName + AVSCV2 +
SecurityKey + AddressResult
+ PostCodeResult +
CV2Result + GiftAid +
3DSecureStatus + CAVV +
AddressStatus + PayerStatus
+ CardType + Last4Digits +
DeclineCode + ExpiryDate +
FraudResponse +
BankAuthCode
于 2015-07-31T10:39:15.517 に答える