gpt4 book ai didi

php - 在网上商店快速结帐后,我如何进入 Paypal 确认付款? PHP

转载 作者:太空宇宙 更新时间:2023-11-03 16:12:16 26 4
gpt4 key购买 nike

当您在任何网店上单击 Express Checkout PayPal 按钮时,它会将您重定向到特定的 paypal 登录链接,以支付订单。

我已经搜索了 3 天,寻找一个简单的 paypal php curl 脚本,让您从这一步登录,并确认付款,但还没有找到任何东西。我只找到了让你从 paypal 主页登录的脚本,当你中断 paypal 流程时,它不会工作。

我发现无法为此使用 API,因此它必须由 CURL 完成。

我要求这样做是因为我经营着一个直销网站,并且希望自动执行某些步骤,例如下订单和付款。一个有效的代码不仅对我有帮助,而且对所有希望以某种形式自动购买的人都有帮助。

我将粘贴我制作的无效脚本,它只会给我一条来自 paypal 的“抱歉 - 您的最后一个操作无法完成”消息,如果这有任何帮助的话..



$agent = "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.0.8) Gecko/20061025 Firefox/1.5.0.8";
$header[] = "text/html; charset UTF-8";
$url = $_GET[link];
// $url = "https://www.paypal.com/cgi-bin/webscr?cmd=_express-checkout&&token=EC-EXAMPLE7839244";
$email = urlencode("email");
$password = urlencode("password");
$cookies = "cookies.txt";

$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_REFERER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, $agent);
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookies);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookies);
curl_setopt($ch, CURLOPT_URL, $url);

// HIT LOGINPAGE
$login = curl_exec ($ch);
// PRINT LOGINPAGE
var_dump($login);

// GET LOGIN-LINK AND SET POSTFIELDS
preg_match("/merchantpaymentweb\?cmd\=\_flow(.*?)\"/", $login, $output);
$link = "https://www.paypal.com/c2/cgi-bin/merchantpaymentweb?cmd=_flow$output[1]";
// PRINT LOGIN-LINK
echo "LINK: $link<br/>";
preg_match("/CONTEXT\" value=\"(.*?)\"/", $login, $output);
$CONTEXT = $output[1];
$postfields = "CONTEXT=$CONTEXT&close_external_flow=false&cmd=_flow&external_close_account_payment_flow=payment_flow&flow_name=xpt/Merchant/hostedpayments/Login&flow_name=xpt/Merchant/hostedpayments/Login&form_charset=UTF-8&id=&login.x=Log+In&login_email=".$email."&login_password=".$password."&myAllTextSubmitID=";
echo "<br/>POSTFIELDS : \"$postfields\"<br/>";

curl_setopt($ch, CURLOPT_URL, $link);
curl_setopt ($ch, CURLOPT_POST, 1);
curl_setopt ($ch, CURLOPT_POSTFIELDS, $postfields);

// POST FORM, fails, gives "Sorry - Your last action could not be completed" message
$should_be_logged_in_now = curl_exec($ch);
var_dump($should_be_logged_in_now);

最佳答案

我不太熟悉使用 PayPal。由于退款,我像 4 年前一样停止使用它。

您可能需要检查 PayPal Pro API 这是一项付费服务​​。这可能是您正在寻找的,而不是处理 CURL 和 PayPal,因为您提到了使用 API。

关于php - 在网上商店快速结帐后,我如何进入 Paypal 确认付款? PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5697368/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com