PayPal PHP SDK - 不返回GET变量'成功'

时间:2017-11-22 00:49:01

标签: 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&安培;标记= 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

1 个答案:

答案 0 :(得分:1)

“成功”不会自动产生。当您进行初始POST /付款电话时,您需要包含以下

$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]

基本上只需确保将您的成功返回网址指定为www.mysite.com/successpage.html?success=true。 PYPL将追加 paymentId = PAY67S97196TG1078736LIKMI4Q&安培;标记= EC37412549V2519404X&安培; PayerID = DNZQ8C57C7P6Q