PayPal 收据不显示使用 SetExpressCheckout 的描述信息

标签 paypal

我正在使用 PayPal 的 API 通过 SetExpressCheckout 方法处理付款。

$requestParams = array(
   'RETURNURL' => 'SUCCESS_PAGE_URL',
   'CANCELURL' => 'CANCE_PAGE_URL'
);

$orderParams = array(
   'PAYMENTREQUEST_0_AMT' => $price,
   'PAYMENTREQUEST_0_SHIPPINGAMT' => '0',
   'PAYMENTREQUEST_0_CURRENCYCODE' => 'USD',
   'PAYMENTREQUEST_0_ITEMAMT' => $price
);

$item = array(
   'L_PAYMENTREQUEST_0_NAME0' => $item_name,
   'L_PAYMENTREQUEST_0_DESC0' => $item_description,
   'L_PAYMENTREQUEST_0_AMT0' => $price,
   'L_PAYMENTREQUEST_0_QTY0' => '1'
);

$paypal = new Paypal();
$response = $paypal -> request('SetExpressCheckout',$requestParams + $orderParams + $item);

一切正常,但即使描述显示在 PayPal 的结帐页面中,我收到的电子邮件收据也缺少描述信息。

有谁知道我怎样才能让描述显示在收据上?

最佳答案

想通了。当 SetExpressCheckout 完成并返回“成功”时,它会被重定向到 PayPal,然后返回到您指定的 RETURNURL。在此 RETURNURL 页面上,对于 DoExpressCheckoutPayment,您需要指定订单详细信息,这就是发票中显示的内容。这是代码:

 // Complete the checkout transaction
$requestParams = array(
   'TOKEN' => $_GET['token'],
   'PAYMENTACTION' => 'Sale',
   'PAYERID' => $_GET['PayerID'],
   'PAYMENTREQUEST_0_AMT' => '1', // Same amount as in the original request
   'PAYMENTREQUEST_0_CURRENCYCODE' => 'USD' // Same currency as the original request

);

$item = array(
   'L_PAYMENTREQUEST_0_NAME0' => $name, 
   'L_PAYMENTREQUEST_0_DESC0' => $desc, // <-- this is the description
   'L_PAYMENTREQUEST_0_AMT0' => $price,
   'L_PAYMENTREQUEST_0_QTY0' => '1'
);

$response = $paypal -> request('DoExpressCheckoutPayment',$requestParams + $item);

关于PayPal 收据不显示使用 SetExpressCheckout 的描述信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28910051/

相关文章:

android - Android应用程序中的 Paypal 帐户实现

c# - 尝试结帐时 PayPal 功能中的 GetResponse() 错误

php - 如何使用 PayPal PHP REST SDK 设置单独的账单地址和送货地址?

php - 哪种 paypal 帐户类型适用于像 istockphoto 这样的积分购买?

c# - CGI 和 WebService 有什么区别?

javascript - 尝试从 JavaScript 客户端的 PHP 服务器捕获托管的 PayPalCheckoutSdk.Orders.OrdersCreateRequest 错误

Paypal payflow link setup no "PayPal Express Checkout"feildset

php - PayPal IPN 不断返回 'INVALID' 代码,无论我做什么

paypal - paypal支付成功后如何获取信用卡号后4位

paypal - 使用 PayPal 进行货币转换