0

我正在尝试整合 Paypal Express。订单几乎可以正常工作,价格和商品名称显示在贝宝的购物车中,所以我认为 SetExpresscheckout 有效。我的问题是 DoExpressCheckoutPayment 工作错误,因为在邮件中订单描述是空白的,尽管我提供了信息:

$padata =   '&TOKEN='.urlencode($token).
                        '&PAYERID='.urlencode($playerid).
                        '&PAYMENTACTION='.urlencode("SALE").
                        '&AMT='.urlencode($ItemTotalPrice).
                      '&PAYMENTREQUEST_0_CURRENCYCODE='.urlencode($PayPalCurrencyCode).          
                        '&L_PAYMENTREQUEST_0_NAME0='.urlencode("Name").  
                        '&L_PAYMENTREQUEST_0_DESC0='.urlencode("Description").  
                        '&CURRENCYCODE='.urlencode($PayPalCurrencyCode);

    $paypal= new MyPayPal();
    $httpParsedResponseAr = $paypal->PPHttpPost('DoExpressCheckoutPayment', $padata, $PayPalApiUsername, $PayPalApiPassword, $PayPalApiSignature, $PayPalMode);

这是同样的问题:Express Checkout (NVP) 中的 Instant Payment Notification order description blank

但解决方案无济于事。我希望你能帮助我。对不起,我的英语不好。

4

1 回答 1

0

PayPal 无法识别您的行项目详细信息 (L_PAYMENTREQUEST_0_NAME0L_PAYMENTREQUEST_0_DESC0),因为您没有包含行项目数量或价格,也没有包含项目小计。

理想情况下,您应该传递所售商品的完整详细信息,但如果您只想传递摘要,则需要在 DoExpressCheckoutPayment 调用中添加以下参数:

  • L_PAYMENTREQUEST_0_AMT0(将此设置为订单总额)
  • L_PAYMENTREQUEST_0_QTY0(将此设置为1
  • PAYMENTREQUEST_0_ITEMAMT(将此设置为订单总额)
于 2013-08-26T05:39:58.333 回答