我明白这可以做到。
以下是我尝试的内容:
$request = curl_init();
// Set request options
curl_setopt_array($request, array
(
CURLOPT_URL => 'https://www.paypal.com/cgi-bin/webscr',
CURLOPT_POST => TRUE,
CURLOPT_POSTFIELDS => http_build_query(array
(
'cmd' => '_notify-synch',
'tx' => $tx,
'at' => "xxxxxxxxxxxxxxxxx",
)),
CURLOPT_RETURNTRANSFER => TRUE,
CURLOPT_HEADER => FALSE,
// CURLOPT_SSL_VERIFYPEER => TRUE,
// CURLOPT_CAINFO => 'cacert.pem',
));
// Execute request and get response and status code
$response = curl_exec($request);
$status = curl_getinfo($request, CURLINFO_HTTP_CODE);
var_dump($response);
die();
// Close connection
curl_close($request);
当我将curl请求发送到https://www.paypal.com/cgi-bin/webscr时,我收到此错误:
"失败错误:4003"
当我将其发送到https://www.sandbox.paypal.com/cgi-bin/webscr时,它不返回任何内容,状态为0。
我的帐户目前是沙箱。我已经开始工作,但它已经不再适用了。
有人可以帮忙。
由于
答案 0 :(得分:1)
通常,只有在Paypal回复您网站上的ipn时,我们才会返回客户信息。
您可以使用:
https://github.com/Quixotix/PHP-PayPal-IPN
对于测试,您可以使用GET将买家重定向到paypal,如下所示:
# redirect to paypal
$redirect = 'https://www'.$addsand.'.paypal.com/cgi-bin/webscr?rm=2&cmd=_xclick&txn_type=express_checkout&no_note=1&no_shipping=1&return='.$return.'&cancel_return='.$cancel_return.'¬ify_url='.$notify_url.'&image_url='.$image_url.'&business='.$paypaluser.'¤cy_code='.$paypalcurrency.'&amount='.$price.'&mc_gross='.$price.'&item_name='.$product.'&item_number='.$planid.'&custom='.$uid; header("Location: $redirect"); exit();