gpt4 book ai didi

PAYPAL RESTful API 执行调用偶尔出错

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

我已经使用 paypal RESTful 的 API PHP SDK 将我的网站与 paypal 完全集成。现在我的问题是每隔一段时间在支付过程中,一旦用户批准支付并且它返回到我的网站执行,API 执行请求返回来自 paypal 的以下响应。这些场景中的 HTTP 响应代码是 400 和 500。下面我列出了错误名称和错误消息,它们作为 JSON 响应的一部分出现,我在执行操作时从 paypal (https://api.paypal.com/v1/payments/payment/PAY-xxxxxxxxxxxxxxxxxxxxxxxxxx/execute) 获得:

400 PAYMENT_NOT_APPROVED_FOR_EXECUTION,付款人未批准付款500 INTERNAL_SERVICE_ERROR,发生内部服务错误

就我用来调用的代码而言,我添加了执行支付的函数。我应该补充一点,这在 98% 的时间里都是有效的。下面是代码:

public function getExecute()
{
// Payment is cancelled
if (!(Input::get('success') && Input::get('success') == 'true'))
return $this->runPaymentExitProcess();

// No paymentId
if (!Session::has('paymentId'))
return "No payment id to execute";

$paymentId = Session::get('paymentId');


$this->payment = Payment::get($paymentId, $this->apiContext);

// The payer_id is added to the request query parameters when the user is redirected from paypal back to your site
$this->execution->setPayer_id(Input::get('PayerID'));

$response = $this->payment->execute($this->execution, $this->apiContext);


// Check for paypal errors
if (isset($response->name)) {
// When we have a paypal error
if ($this->hasPaypalError($response)) {
$error = array('name' => $response->name, 'message' => $response->message);


Session::put('error', $error);

return (MODE == 'LIVE') ? Redirect::to('/paypalerror') : Redirect::to('/paypalerror'.MODE_PARAM);
die;
}
}

// Unset session
Session::forget('paymentId');

// execution successful
if ($this->addPaymentIdToUser($paymentId))
return (MODE == 'LIVE') ? Redirect::to('/') : Redirect::to('/'.MODE_PARAM);

}

代码在 laravel 中。请注意 $this->apiContext 是在类的构造函数中设置的。这也是在 redirect_urls 下的 API 中设置的成功 url 的功能。

谁能帮我弄清楚这个问题是出 self 这边还是 Paypal 那边?

最佳答案

对于 400 错误,如果用户决定不批准付款,就会发生这种情况。如果您认为付款实际上在网络流程中获得批准,那么这将是一个需要进一步调查的问题。

您能否提供 500 内部服务器错误响应的 debugId 和大致时间(带时区或 GMT),如果您认为付款实际上已被用户批准,则提供 400。

关于PAYPAL RESTful API 执行调用偶尔出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18871584/

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