Paypal SDK Payouts - 无法捕获异常并收到http 400

时间:2016-04-14 20:21:17

标签: php paypal sdk

您好我目前正尝试实施以下内容:有人通过PayPal付款 - 第三个人应该在之后的PayPal帐户中获得50%的价格。所以我总是想要遵循以下步骤:A人支付10欧元,我收10欧元,我向C人支付5欧元。

第一部分是通过PHP中的paypal sdk工作,第二部分(将钱转移到另一个人目前效果不佳......)

这是我的代码

 $payouts = new \PayPal\Api\Payout();

 $senderBatchHeader = new \PayPal\Api\PayoutSenderBatchHeader();

 $senderBatchHeader->setSenderBatchId(uniqid())
     ->setEmailSubject("Test.");

 $senderItem1 = new \PayPal\Api\PayoutItem();

 $senderItem1->setRecipientType('Email')
            ->setNote('Test.')
            ->setReceiver('test@paypalsandbox.de')
            ->setSenderItemId('test ' . uniqid())
            ->setAmount(new \PayPal\Api\Currency('{
                    "value": "5.00",
                    "currency":"EUR"
                }'));


 $payouts->setSenderBatchHeader($senderBatchHeader)
   ->addItem($senderItem1);

 // For Sample Purposes Only.
 $request = clone $payouts;

// ### Create Payout
try {
    $output = $payouts->createSynchronous($this->_api_context);
} catch (PayPapl\Exception\PayPalConnectionException $ex) {
            //todo add exception handler
    dd('test');

    ResultPrinter::printError("Created Batch Payout", "Payout", null, $request, $ex);
    exit(1);
}

dd('test');

我无法以某种方式抓住错误。它说

PayPalHttpConnection.php第174行中的PayPalConnectionException: 访问https://api.sandbox.paypal.com/v1/payments/payouts?sync_mode=true时获得了Http响应代码400。

我正在使用laravel 5.1

来实现这一点

任何想法?

2 个答案:

答案 0 :(得分:2)

放一个' \'在您的paypal错误消息前面。为我工作。它是命名空间冲突。

try {
    $output = $payouts->createSynchronous($this->_api_context);
} catch (\PayPal\Exception\PayPalConnectionException $ex) {
    //todo add exception handler
    dd('test');
    ResultPrinter::printError("Created Batch Payout", "Payout", null, $request, $ex);
    exit(1);
}catch (\Exception $e){
    dd($e->getMessage( );
}

See this post

答案 1 :(得分:1)

根据您的业务模型,REST API不是一个很好的选择。 Paypal有自适应支付API,可以让你在许多不同的场景中汇款,从简单到复杂。所以在你的情况下,你可以参考chained payment,发件人支付主要接收者的金额,从中接收者支付次要接收者。发送方只知道主接收方,而不知道辅助接收方。辅助接收器只知道主接收器,而不是发送器。自适应付款演示download