我正在尝试在我的网站上集成paypal快速结账.我试图使用沙箱进行检查.当我从我的网站提交数据时,生成的令牌没有错误,但是当重定向到paypal时,它没有显示付款金额.
顺便说一下,我正在使用paypal express checkout向导的代码.如果有人指出我正确的方向,将会有所帮助.
顺便说一下,我正在使用paypal express checkout向导的代码.如果有人指出我正确的方向,将会有所帮助.
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"] ); }
由于您没有传递所谓的“订单项详细信息”(产品数据),因此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)
如果您想开始向PayPal发送订单项详细信息,请在SetExpressCheckout API请求中包含以下内容:
// Total amount of the purchase,incl shipping,tax,etc PAYMENTREQUEST_0_AMT=300.0 // Total amount of items purchased,excl shipping,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中.