グリーティング カードを販売する Web サイトを所有しています。プログラマーにサイトの構築を手伝ってもらいましたが、テストしたところ、PayPal チェックアウト リンクが実際の PayPal ではなく PayPal サンドボックスを指していることに気付きました。私は非常に技術的に難しいので、PayPal Web サイトの技術文書を読み、自分の Web サイトのスクリプトを見て、スクリプトを変更しようとしましたが、無駄でした。
サイト ファイルで「サンドボックス」を検索したところ、 という名前のファイルが見つかりましたuc_paypal.pages.inc
。これは、PayPal サンドボックスへの参照を含む唯一のファイルです。ファイルには、PayPal サンドボックスへの参照が 3 つあります。初め:
if (variable_get('uc_paypal_wpp_server', '') == 'https://api-3t.paypal.com/nvp') {
$host = 'https://www.paypal.com/cgi-bin/webscr';
}
else {
$host = variable_get('uc_paypal_wps_server', 'https://www.sandbox.paypal.com/cgi-bin/webscr');
}
2番:
$nvp_response = uc_paypal_api_request($nvp_request, variable_get('uc_paypal_wpp_server', 'https://api-3t.sandbox.paypal.com/nvp'));
三番:
if ($_SESSION['have_details'][$order->order_id] !== TRUE) {
$nvp_request = array(
'METHOD' => 'GetExpressCheckoutDetails',
'TOKEN' => $_SESSION['TOKEN'],
);
$nvp_response = uc_paypal_api_request($nvp_request, variable_get('uc_paypal_wpp_server', 'https://api-3t.sandbox.paypal.com/nvp'));
$_SESSION['PAYERID'] = $nvp_response['PAYERID'];
$shipname = check_plain($nvp_response['SHIPTONAME']);
if (strpos($shipname, ' ') > 0) {
$order->delivery_first_name = substr($shipname, 0, strrpos(trim($shipname), ' '));
$order->delivery_last_name = substr($shipname, strrpos(trim($shipname), ' ') + 1);
}
else {
$order->delivery_first_name = $shipname;
$order->delivery_last_name = '';
}
.sandbox
を指すように削除を変更しようとしまし.paypal.com
たが、修正されたファイルをサーバーにアップロードした後、変更はないようです(チェックアウトはまだ.sandbox.paypal
.
正しいパラメータを変更しましたか? スクリプトを変更した後に何かをインストールする必要がありますか?どうすればよいですか? 変更が必要な MySQL エントリはありますか?
Paypal から、使用すべき API 証明書または署名があることを読みました。それをウェブサイトのどこに載せますか?IPNはどうですか?