PayPal Payments Advanced がありますが、最初のゲートウェイ統合ステップを通過できません。おそらく、明らかなはずの単純なものが欠けているのでしょう。
高度なゲートウェイを統合するために私が見つけることができたすべての公式のPayPalドキュメントは、最初のステップはセキュアトークンを取得することであると述べています. たとえば、 https://developer.paypal.com/webapps/developer/docs/classic/payflow/gs_ppa_hosted_pages/のページ 。
以下にテスト スクリプトを投稿します (機密情報は変更されています)。
テスト スクリプトを実行するたびに、「エラー: トランザクションを処理できなくなりました。マーチャントの Web サイトに戻るか、マーチャントに連絡してください。エラー: 160」というエラー メッセージが表示されます。
PayPal Gateway 開発者ガイドおよびリファレンスによると、エラー 160 は「セキュア トークンは既に使用されています。トランザクションが成功したか、トランザクションを正常に処理しようとしたときにトークンが 3 回使用されたため、セキュア トークンが期限切れになったことを示します。新しいセキュア トークンを生成する必要があります。」
ただし、セキュア トークンはまだ使用されていません。スクリプトが実行されるたびに新しいものが生成されます。
PayPalマネージャーで「セキュアトークンを有効にする」が「はい」に設定されています。
これがスクリプトです。私は何を間違っていますか?
<?php
$url = 'https://payflowlink.paypal.com';
#$url = 'https://pilot-payflowlink.paypal.com';
$token = md5( 'Will Bontrager' . time() );
/* $info assignment is all one line. Multi-line here for readability */
$info = "PARTNER=PayPal&
VENDOR=CertainReservations&
USER=ABC123&
PWD=321cba&
TRXTYPE=S&
AMT=23.45&
CREATESECURETOKEN=Y&
SECURETOKENID=$token";
echo "<pre>Value:$info</pre>";
$options = array(
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => false,
CURLOPT_VERBOSE => false,
CURLOPT_SSL_VERIFYHOST => 0,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_POST => 1,
CURLOPT_POSTFIELDS => $info
);
$ch = curl_init($url);
curl_setopt_array($ch,$options);
$content = curl_exec($ch);
$err = curl_errno($ch);
$errmsg = curl_error($ch) ;
$info = curl_getinfo($ch);
curl_close($ch);
if( $err )
{
echo "<pre>Error. $err\n$errmsg\n";
print_r($info);
echo '</pre>';
}
echo $content;
?>
ご指導ありがとうございました。
いくつかの重要な情報が欠落しているに違いないと思います。
意思