Php 我正在使用PayPalRESTAPI并得到错误信息

Php 我正在使用PayPalRESTAPI并得到错误信息,php,laravel,payment-gateway,paypal-sandbox,laravel-5.5,Php,Laravel,Payment Gateway,Paypal Sandbox,Laravel 5.5,在我没有包含$paye变量之前,它一直运行良好。包含$Paye后,我的代码出现错误 PayPal\Exception\PayPalConnectionException(400) 访问时获取Http响应代码400 其实我的要求是: 一个用户可以将付款发送给其他用户,而不是我的帐户。 任何人有任何类型的建议或任何伪代码吗?请参考 理解你的错误 PayPal返回每个异常的详细数据(500内部服务器错误除外),解释您看到的确切错误。您可以按如下方式检索: 更新异常处理以捕获PayPalConnecti

在我没有包含$paye变量之前,它一直运行良好。包含$Paye后,我的代码出现错误

PayPal\Exception\PayPalConnectionException(400)

访问时获取Http响应代码400

其实我的要求是: 一个用户可以将付款发送给其他用户,而不是我的帐户。 任何人有任何类型的建议或任何伪代码吗?

请参考

理解你的错误

PayPal返回每个异常的详细数据(500内部服务器错误除外),解释您看到的确切错误。您可以按如下方式检索:

更新异常处理以捕获
PayPalConnectionException
print$ex->getData()
,如下所示:

    $payer = new Payer();
    $payer->setPaymentMethod("paypal");

    $amount = new Amount();
    $amount->setCurrency("INR")
        ->setTotal($request->get('amount'));

    $payee = new Payee();
    $payee->setEmail($request->get('email'));
    $transaction = new Transaction();
    $transaction->setAmount($amount)
        ->setDescription("Payment description")
        ->setPayee($payee)
        ->setInvoiceNumber(uniqid());

    $redirectUrls = new RedirectUrls();
    $redirectUrls->setReturnUrl("http://udhaarcopy.test/paymentsuccess?success=true")
                ->setCancelUrl("http://udhaarcopy.test/paymentsuccess?success=false");

    $payment = new Payment();
    $payment->setIntent("Udhaar")
        ->setPayer($payer)
        ->setRedirectUrls($redirectUrls)
        ->setTransactions(array($transaction));


    $request = clone $payment;


    try {
        $payment->create($apiContext);
          // dd( $payment->create($apiContext));
    } catch (PayPal\Exception\PPConnectionException  $ex) {
        dd($ex);
    }
     $payment->getApprovalLink();
    $approvalUrl = $payment->getApprovalLink();

    return redirect($approvalUrl)->with('payment' , $payment);
}

public function getPaymentStatus()
{
    dd($_GET);
    $status = $_GET['success'];
    $paymentId = $_GET['paymentId'];
    $PayerID = $_GET['PayerID'];
    return view('paymentstatus' , compact($status , $paymentId , $PayerID));
}
现在,如果您再试一次,您将看到如下内容:

try {
    $payment->create($apiContext);
} catch (PayPal\Exception\PayPalConnectionException $ex) {
    echo $ex->getCode(); // Prints the Error Code
    echo $ex->getData(); // Prints the detailed error message 
    die($ex);
} catch (Exception $ex) {
    die($ex);
}

如果你试着在题目中多定义一点你的问题,也许你会得到更多的答案。
{
    "name": "VALIDATION_ERROR",
    "details": [
        {
            "field": "transactions[0].amount",
            "issue": "Transaction amount details (subtotal, tax, shipping) must add up to specified amount total"
        }
    ],
    "message": "Invalid request - see details",
    "information_link": "https://developer.paypal.com/webapps/developer/docs/api/#VALIDATION_ERROR",
    "debug_id": "0faff23b719d8"
}