php - PayPal PHP SDK - 不返回 GET 变量 'success'

标签 php paypal paypal-sandbox paypal-rest-sdk

我正在使用 PayPal PHP SDK 创建付款并接收 JSON 响应,例如下面的示例,它看起来有效并包含授权 URL,例如:

https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-5W411607PA915392K

我转到 URL,登录,它使用以下 GET 变量将我重定向回我的站点:

paymentId=PAY-67S97196TG1078736LIKMI4Q&token=EC-37412549V2519404X&PayerID=DNZQ8C57C7P6Q

问题是,根据此处的示例 (http://paypal.github.io/PayPal-PHP-SDK/sample/doc/payments/ExecutePayment.html),我需要检查 $_GET['success'] 以查看是否成功。但是,如您所见,我在回复中没有得到该变量,只有上面三个变量。

我正在使用位于此处的 PayPall PHP SDK:https://github.com/paypal/PayPal-PHP-SDK

这是一个类似问题的链接:Paypal PHP SDK REST is not returning any "success" variable

最佳答案

“成功”不会自动到来。当您进行初始 POST/Payments 调用时,您需要包括以下内容

$baseUrl = getBaseUrl();
$redirectUrls = new RedirectUrls();
$redirectUrls->setReturnUrl("$baseUrl/ExecutePayment.php?success=true")
    ->setCancelUrl("$baseUrl/ExecutePayment.php?success=false");

检查一下[ http://paypal.github.io/PayPal-PHP-SDK/sample/doc/payments/CreatePaymentUsingPayPal.html][1]

基本上只需确保将成功返回 URL 指定为 www.mysite.com/successpage.html?success=true 之类的内容。 PYPL会追加 paymentId=PAY67S97196TG1078736LIKMI4Q&token=EC37412549V2519404X&PayerID=DNZQ8C57C7P6Q

关于php - PayPal PHP SDK - 不返回 GET 变量 'success',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47425126/

相关文章:

javascript - paypal 快速结帐重新呈现

java - Paypal MassPayout 出现 403 错误

php - PayPal REST API 订单工作流程 : Payment -> Sale -> Webhook?

php - 如何使用 checkout.js 在 paypal 快速结帐中成功全额付款后获取 IPN 状态

php - 从 mysqli bind_param 捕获警告信息

php - Mysql:最近 7 天的结果

php - 使用 codeigniter php 插入数据后发送电子邮件

php - 我怎样才能使这个 mysql 查询工作而不会得到空结果?

paypal - 如果第一次注册和支付 0 有 14 天的试用期,Paypal 的 subscr_payment 会被调用吗?

paypal - 如何从我的网站取消 Paypal 定期付款?