gpt4 book ai didi

laravel - PayPal 被重定向到成功页面,但它没有进行货币交易(也没有 webhook 或 IPN 通知)

转载 作者:太空宇宙 更新时间:2023-11-03 15:49:58 24 4
gpt4 key购买 nike

这几天我一直在努力解决一个 paypal 问题。我正在使用 PayPal PHP SDK,我的环境是安装了 Php 7.2 并运行 Laravel 5.6 的 Linux 服务器(Ubuntu 16)。

我通过 composer 安装了 paypal php sdk,并在代码中集成了“成功”。当我尝试运行代码时,我返回了付款链接(通常是您重定向用户的地方),所以它工作正常,第一个请求或 api 凭据没有问题。

问题是,如果您转到付款链接并且我付款了,它会将付款人重定向到我网站的成功页面,但我的帐户(买家和收款人)没有收到任何交易而且我也没有收到任何 webhook 或 IPN 通知(也像,用户必须钱或用户个人资料未验证,什么都没有)。

我已经尝试过的:

  • 打开 live api 并尝试使用真实的 paypal 配置文件,但我遇到了同样的问题。所以这不是问题。 (在 paypal sdk github 上有人在沙箱上有问题)。
  • 使用 Laravel Packege(同一个问题)。

这是我的代码(但我不认为问题出在这个代码上):

$_api_context = new ApiContext(new OAuthTokenCredential(
'CLIENT_ID','SECRET'));
$_api_context->setConfig(array(
'mode' => env('PAYPAL_MODE', 'sandbox'),
'log.LogEnabled' => true,
'log.FileName' => 'PayPal.log',
'log.LogLevel' => 'DEBUG'
));


$payer = new Payer();
$payer->setPaymentMethod('paypal');
$item_1 = new Item();
$item_1->setName('Item 1') /** item name **/
->setCurrency('USD')
->setQuantity(1)
->setPrice('3'); /** unit price **/

$item_list = new ItemList();
$item_list->setItems(array($item_1));
$amount = new Amount();
$amount->setCurrency('USD')
->setTotal('3');
$transaction = new Transaction();
$transaction->setAmount($amount)
->setItemList($item_list)
->setDescription('Your transaction description');

$redirect_urls = new RedirectUrls();

$redirect_urls->setReturnUrl('https://XXXXXXX.ngrok.io/success') /** Specify return URL **/
->setCancelUrl('https://XXXXX.ngrok.io/error');

$payment = new Payment();
$payment->setIntent('Sale')
->setPayer($payer)
->setRedirectUrls($redirect_urls)
->setTransactions(array($transaction));


//dd($payment);
try {
$payment->create($_api_context);
} catch (\PayPal\Exception\PPConnectionException $ex) {
dd($ex);

}

foreach ($payment->getLinks() as $link) {
if ($link->getRel() == 'approval_url') {
$redirect_url = $link->getHref();
break;
}
}
$approvalUrl = $payment->getApprovalLink();

dd($redirect_url,$_api_context,$paypal,$paymentGateway,$approvalUrl,$payment->getId());

最佳答案

更新

我尝试将钱从沙盒帐户(个人)发送到拥有该 API 的企业帐户,并且 ipn 工作正常。

关于laravel - PayPal 被重定向到成功页面,但它没有进行货币交易(也没有 webhook 或 IPN 通知),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50412375/

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