2011-09-27 134 views
6

我正在嘗試在我的網站上整合paypal快速結賬。我正在嘗試使用沙箱檢查。當我從我的網站提交數據時,令牌生成時沒有錯誤,但是當重定向到paypal時,它不顯示付款金額。 btw我使用的是從PayPal快速結帳嚮導的代碼。如果有人指出我正確的方向,這將會有所幫助。php paypal快速結帳問題

require_once ("paypalfunctions.php"); 

$paymentAmount = 15; 

$currencyCodeType = "GBP"; 
$paymentType = "Sale"; 
$returnURL = "http://www.mysite.com/paypal/confirm.php"; 
$cancelURL = "http://www.mysite.com/paypal/index.php"; 
$resArray = CallShortcutExpressCheckout ($paymentAmount, $currencyCodeType,   $paymentType, $returnURL, $cancelURL); 
$ack = strtoupper($resArray["ACK"]); 
if($ack=="SUCCESS") 
{ 
RedirectToPayPal ($resArray["TOKEN"]); 

} 
+0

如果您發佈了一些代碼片段,這也會對您有所幫助;) –

+0

您可以將所有問題都放在您的問題中,並請格式化。 –

+0

@JonStirling:現在可以嗎? – shoieb0101

回答

17

由於您沒有通過所謂的「訂單項詳細信息」(產品數據),因此PayPal不會顯示總金額。

如果你只是想顯示當前的購買量,如果你想開始發送行項目細節,貝寶重定向買家https://www.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-xxxxxx&useraction=commit(而不是https://www.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-xxxxx

,包括在你的SetExpressCheckout API以下要求:

// Total amount of the purchase, incl shipping, tax, etc 
PAYMENTREQUEST_0_AMT=300.0 
// Total amount of items purchased, excl shipping, tax, etc  
PAYMENTREQUEST_0_ITEMAMT=300.0 
// Authorize the funds first (Authorization), or capture immediately (Sale)?  
PAYMENTREQUEST_0_PAYMENTACTION=Sale 
// First item 
L_PAYMENTREQUEST_0_NAME0=Item1 
L_PAYMENTREQUEST_0_QTY0=1 
L_PAYMENTREQUEST_0_AMT0=100.00 
// Second item 
L_PAYMENTREQUEST_0_NAME1=Item2 
L_PAYMENTREQUEST_0_QTY1=1 
L_PAYMENTREQUEST_0_AMT1=200.00 

如果你想看到這個在自己的歷史,以及,你還需要包括這DoExpressCheckoutPayment

+1

可能存在API版本限制 - 請參閱[this comment](http://stackoverflow.com/questions/8206175/missing-amount-and-order-summary-in-paypal-express-checkout#comment16499025_8213842) – Taras

+0

如上所述,我只是添加'&useraction = commit'。有效..!!! – Parthi04

+0

'&useraction = commit'爲我工作 – 2016-07-12 06:45:43