4

参考

代码

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

    $item_list = new ItemList();
    $item_list->setItems(array($item_1));
    $amount = new Amount();
    $amount->setCurrency('USD')
        ->setTotal(2);

    $transaction = new Transaction();
    $transaction->setAmount($amount)
        ->setItemList($item_list)
        ->setDescription('Your transaction description');

    $redirect_urls = new RedirectUrls();
    $redirect_urls->setReturnUrl(\URL::route('ReturnedFromPaypal')) /** Specify return URL **/
        ->setCancelUrl(\URL::route('CancelledPaymentWithPaypal'));

    $payment = new Payment();
    $payment->setIntent('Sale')
        ->setPayer($payer)
        ->setRedirectUrls($redirect_urls)
        ->setTransactions(array($transaction));
        /** dd($payment->create($this->_api_context));exit; **/

    try {
        $payment->create($this->_api_context);
    } catch (\PayPal\Exception\PPConnectionException $ex) {
        dd($ex);
        if (\Config::get('app.debug')) {
            \Session::put('error','Connection timeout');
            return "Error occured";
            /** echo "Exception: " . $ex->getMessage() . PHP_EOL; **/
            /** $err_data = json_decode($ex->getData(), true); **/
            /** exit; **/
        } else {
            \Session::put('error','Some error occur, sorry for inconvenient');
            return "Error occured";
            /** die('Some error occur, sorry for inconvenient'); **/
        }
    }
    foreach($payment->getLinks() as $link) {
        if($link->getRel() == 'approval_url') {
            $redirect_url = $link->getHref();
            break;
        }
    }
    /** add payment ID to session **/
    \Session::put('paypal_payment_id', $payment->getId());
    if(isset($redirect_url)) {
        /** redirect to paypal **/
        return \Redirect::away($redirect_url);
    }
    \Session::put('error','Unknown error occurred');
    return "Last line error";
}

有什么问题 ?

当我尝试使用沙盒凭据进行付款登录时,出现以下错误。

我们目前无法使用您的 PayPal 帐户处理您的付款。请返回商家并尝试使用其他付款方式。

我正在按照这个在 Laravel 5.5 中配置 Paypal

XHR 错误详细信息

在此处输入图像描述 我错过了什么吗?

4

1 回答 1

2

它看起来像一个 Paypal 限制。

例如,在此链接中,支持人员说俄罗斯法律将贝宝帐户限制为 100000 卢布的交易。

当您达到限制时,您必须在活动中指定某些内容以解锁限制。

也许您已达到您所在国家/地区的交易金额限制?尝试使用较低的金额,如 0.01,并从沙盒账户(卖家)中删除旧的测试交易。

如果卖家的交易量不多,可能问题出在客户的账户上?尝试创建一个新帐户并使用它。

我想在沙盒中将是一个解锁的地方

于 2017-11-02T10:24:29.073 回答