我已經搜索了100次文檔和this tutorial,但無法弄清楚如何使用PayPal賬戶而不是信用卡來完成支付過程。我已經獲得了信用卡付款,沒有問題。PayPal SDK:使用PayPal賬戶支付時沒有服務器響應
在上述的教程,這是說,我應該想到做一個OAuth憑證後,從服務器的JSON響應:
$sdkConfig = array(
"mode" => "sandbox"
);
$cred = new OAuthTokenCredential("clientID","clientSecret", $sdkConfig);
我得到絕對儘管歌廳沒有服務器響應「200 OK」來自服務器的狀態。
起初我有我的代碼中設置了像一堆其他教程:
$apiContext = new ApiContext(
new OAuthTokenCredential(
'clientID', // ClientID
'clientSecret' // ClientSecret
)
);
$payer = new Payer();
$payer->setPaymentMethod('paypal');
$item1 = new Item();
$item1->setName("Donation squares.");
$item1->setCurrency('USD');
$item1->setQuantity(1);
$item1->setPrice(1);
$itemList = new ItemList();
$itemList->setItems(array($item1));
$amountDetails = new Details();
$amountDetails->setSubtotal('7.41');
$amountDetails->setTax('0.03');
$amountDetails->setShipping('0.03');
$amount = new Amount();
$amount->setCurrency('USD');
$amount->setTotal('7.47');
$amount->setDetails($amountDetails);
$transaction = new Transaction();
$transaction->setAmount($amount);
$transaction->setDescription('This is the payment transaction description.');
$redirectUrls = new RedirectUrls();
$redirectUrls->setReturnUrl("https://devtools-paypal.com/guide/pay_paypal/php?success=true");
$redirectUrls->setCancelUrl("https://devtools-paypal.com/guide/pay_paypal/php?cancel=true");
$payment = new Payment();
$payment->setIntent('sale');
$payment->setPayer($payer);
$payment->setRedirectUrls($redirectUrls);
$payment->setTransactions(array($transaction));
try{
$payment->create($apiContext);
} catch(Exception $e){
echo $e
exit(1);
}
這一切都不作品無論是 - 沒有任何來自服務器的響應。
回答/評論 你不應該在尋找JSON響應。如果付款成功創建,則應通過運行生成批准網址
$payment->getApprovalLink();
用戶然後按照此鏈接完成他/她的付款。
@ JAY-特爾 - 貝寶我得到PHP致命錯誤:類 'ResultPrinter' 未找到(因爲添加的代碼示例)。僅供參考,我通過作曲家安裝了這個軟件,並使用require __DIR__。 '/../vendor/autoload.php';在文件頂部 – Ravioli87 2015-04-01 20:23:35
這是正確的。您可以刪除結果打印機行,因爲它僅用於樣本。用您選擇的任何回聲聲明替換它。 – 2015-04-01 20:37:52