我如何以及在哪里开始使用PayPal调试Guest Checkout?
我的网站运行正常超过一年,现在突然移动网站上的访客结账停止了工作。我正在使用PayPal PHP SDK,代码中没有任何更改。访客结账时,它不会在移动设备上显示,但在桌面上运行正常。
我搜索了文档和论坛,我看到了几个类似的问题,但没有答案。
提到的事情:
更新使用的相关代码部分:
use PayPal\Api\Amount;
use PayPal\Api\Details;
use PayPal\Api\Item;
use PayPal\Api\ItemList;
use PayPal\Api\Payer;
use PayPal\Api\Payment;
use PayPal\Api\RedirectUrls;
use PayPal\Api\Transaction;
use PayPal\Api\ShippingAddress;
$apiContext = new \PayPal\Rest\ApiContext(
new \PayPal\Auth\OAuthTokenCredential(
'XXX', // ClientID
'YYY' // ClientSecret
)
);
$payer = new Payer();
$payer->setPaymentMethod("paypal");
// ### Itemized information
// (Optional) Lets you specify item wise
// information
$item1 = new Item();
$item1->setName($name)
->setCurrency($currency)
->setQuantity($quantity)
->setPrice($price)
->setDescription($description)
->setSku($productid);
$myitem=array($item1);
$itemList->setItems($myitem);
$details = new Details();
$details->setShipping($shipping)
->setTax($tax)
->setSubtotal($subtotal);
$amount = new Amount();
$amount->setCurrency($currency)
->setTotal($totalprice)
->setDetails($details);
$transaction = new Transaction();
$transaction->setAmount($amount)
->setItemList($itemList)
->setDescription($description);
$baseUrl = "https://........";
$redirectUrls = new RedirectUrls();
$redirectUrls->setReturnUrl("$baseUrl/execute.php")
->setCancelUrl("$baseUrl/cancel_execute.php?id=$productid");
$payment = new Payment();
$payment->setIntent("sale")
->setPayer($payer)
->setRedirectUrls($redirectUrls)
->setTransactions(array($transaction));
try {
$payment->create($apiContext);
} catch (PayPal\Exception\PPConnectionException $ex) {
echo "Exception: " . $ex->getMessage() . PHP_EOL;
//echo "<pre>";
//var_dump($ex->getData());
exit(1);
}
foreach($payment->getLinks() as $link) {
if($link->getRel() == 'approval_url') {
$redirectUrl = $link->getHref();
break;
}
}
$payment_id = $payment->getId();
答案 0 :(得分:1)
好的,所以这里是更新,经过2天的地狱和无数的PayPal后退和前进,我在不同渠道与不同的人交谈,我得到了以下答案:
1)这从未在移动设备上运行,因为它不安全,它可以在iPad上运行。 - 真是个笑话,它工作了一年多,实际上它目前还不适用于iPad。
2)您的帐户未设置为接受信用卡付款。 - GGGRRRRR我知道我不是在做PayPal类型的促销活动,这应该允许客人结账!
3)这是来自他们的售票系统(对不起,请用英文说什么?)
我为您启用了此选项。请注意直接付款 通过信用卡将无法100%的工作,如果你做了一些 测试可能不起作用。
允许或不作为访客付费的流程是一个流程 在我们无法控制的情况下,我们只能最大化津贴。
4)如果客户多次尝试使用该卡,则不允许其使用该卡。 - 但他们没有尝试使用它的机会,因为它们只有一个注册页面
5)没有客人选择 - LOL !!!!!!!!!
6)尝试清除缓存 - LOL !!!!!!!
解决方案? 我最终支付了#34; PayPal Pro&#34;重写我的结账流程,现在我直接处理信用卡,目前在Sandbox中等待PayPal审核我的网页,它确实满足了他们的需求,并为我的专业账户开绿灯(应该不晚于星期一)。
问题是否真的被排序了? - 没有
如果有人偶然发现这篇文章,并且知道如何让宾客结账工作,请不要犹豫分享,除此之外,我的个人结论是,在这个周末之后我将寻求使用另一个(可能更便宜)支付处理网关并且只保留PayPal作为次要选项是有人想要使用PayPal Express注销。