2017-07-30 27 views
0

我跟着官方说明:https://www.paypalobjects.com/digitalassets/c/website/marketing/emea/de/de/paypal-plus-center/PayPal_PLUS_integration_guide.pdf如何获得PayPal Plus集成的approvalURL?

08.整合的PayPal PLUS

并呈现支付墙必须 创建付款资源。相应的API调用是“创建支付”。当创建付款资源数量为 时,必须提交货币和物品详细信息 。

..好吧。理解。所以我需要创建一个付款,抓取Url,然后我可以最终呈现PayPalPlus-Object。

我跟着https://github.com/paypal/PayPal-PHP-SDK/blob/master/sample/payments/CreatePaymentUsingPayPal.php作为示例脚本和一个例子。但我无法收到任何$ payment-> getApprovalLink()

我完全错了吗?

哪个示例可以用来创建付款并呈现PayPal +的东西?

回答

0
<?php 
require '../vendor/autoload.php'; 
$apiContext = new \PayPal\Rest\ApiContext(
new \PayPal\Auth\OAuthTokenCredential(
'xxx',  // ClientID 
'xxx'  // ClientSecret 
) 
); 

$apiContext->setConfig(
array(
'mode' => 'sandbox' 
) 
); 

$item1 = new \PayPal\Api\Item(); 
$item1->setName('Test item') 
->setCurrency('USD') 
->setQuantity(1) 
->setPrice(1); 

$itemList = new \PayPal\Api\ItemList(); 
$itemList->setItems(array($item1)); 

$payer = new \PayPal\Api\Payer(); 
$payer->setPaymentMethod('paypal'); 

$amount = new \PayPal\Api\Amount(); 
$amount->setCurrency('USD'); 
$amount->setTotal('1'); 

$transaction = new \PayPal\Api\Transaction(); 
$transaction->setAmount($amount); 
$transaction->setItemList($itemList); 
//$transaction->setInvoiceNumber(uniqid()); 
//$transaction->setDescription('Description'); 

$redirectUrl = new \PayPal\Api\RedirectUrls(); 
$redirectUrl->setReturnUrl('http://localhost'); 
$redirectUrl->setCancelUrl('http://localhost'); 

$payment = new \PayPal\Api\Payment(); 
$payment->setIntent('sale'); 
$payment->setPayer($payer); 
$payment->setRedirectUrls($redirectUrl); 
$payment->setTransactions(array($transaction)); 

$payment = $payment->create($apiContext); 

$approvalUrl = $payment->getApprovalLink(); 

echo $approvalUrl;