2013-03-16 126 views
7

我正在使用PayPal RESTful API。 https://developer.paypal.com/webapps/developer/docs/api/使用REST API的PayPal订单汇总 - - cURL或PHP

我怎样才能把我的消费者订购商品和购买的描述到PayPal,所以当我的用户会被重定向到PayPal通过登录批准订单,其订单汇总会显示在左侧。 。

ORDER发明内容在左侧 paypal empty order summary

我试图通过在transactions.item_list.items但该信息没有显示在订单汇总仍然。

任何帮助如何让订单汇总使用PayPal RESTful API出现在PayPal审批页上?

我还没有对他们的文档感到满意,因为它缺少一些信息,也有一些错误浪费了我的时间来调试。

// 
// prepare paypal data 
$payment = array(
      'intent' => 'sale', 
      'redirect_urls' => array(
       'return_url' => $url_success, 
       'cancel_url' => $url_cancel, 
       ), 
      'payer' => array(
       'payment_method' => 'paypal' 
       ) 
     ); 

// 
// prepare basic payment details 
$payment['transactions'][0] = array(
          'amount' => array(
           'total' => '0.03', 
           'currency' => 'USD', 
           'details' => array(
            'subtotal' => '0.02', 
            'tax' => '0.00', 
            'shipping' => '0.01' 
            ) 
           ), 
          'description' => 'This is the payment transaction description 1.' 
          ); 

// 
// prepare individual items 
$payment['transactions'][0]['item_list']['items'][] = array(
             'quantity' => '1', 
             'name' => 'Womens Large', 
             'price' => '0.01', 
             'currency' => 'USD', 
             'sku' => '31Wf' 
             ); 
$payment['transactions'][0]['item_list']['items'][] = array(
             'quantity' => '1', 
             'name' => 'Womens Medium', 
             'price' => '0.01', 
             'currency' => 'USD', 
             'sku' => '31WfW' 
             ); 

// 
//format payment array to pass to cURL 
$CURL_POST = json_encode($payment); 
+2

你可以发布一个代码示例,我们可以看到你是如何构建的API调用? – 2013-03-16 13:56:13

+0

有一个简单的例子,我使用cURL来处理PayPal付款。其他一切正常,访问令牌,创建/执行付款......我无法让我的购物车在订单汇总部分使用RESTful API显示 – bbullis 2013-03-16 14:06:06

回答

1

你的代码是好的。这实际上是一个很快就会修复的错误。关于文件,你能分享我们如何使它变得更好吗?我想确保您的反馈被传递给我们的文档团队。

+0

首先,我会确保您在文档中指定您需要在每次cURL调用时传入您的客户端ID和密钥。不仅仅是获取访问令牌的调用。 – bbullis 2013-03-17 15:47:18

+0

成功的paypal重定向...您的文档声明您传回“payer_id”...您实际上传回“PayerID” – bbullis 2013-03-17 15:48:34

+0

另一个问题... TRANSACTION对象内的ITEM对象表示,SKU是可选字段,但它真的是你的API需要的。另外,当事情成功返回时,ITEM.SKU会替换我传递的ITEM.NAME值。 – bbullis 2013-03-17 15:50:25

0

我今天尝试时遇到同样的问题。我所做的是添加下面的项目。

$item = new Item(); 
$item->setQuantity($item_quantity); 
$item->setName($item_name); 
$item->setPrice($item_price); 
$item->setCurrency($item_currency); 

$item_list = new ItemList(); 
$item_list->setItems(array($item)); 

$ item_list是事务的一个属性,所以你应该在事后添加它。

$transaction = new Transaction(); 
$transaction->setItemList($item_list); 
.... 

这应显示在贝宝页面上的订单摘要窗格上。 你也可以检查答案here

+1

我如何在计费计划(循环付款)中做同样的事情? – totothegreat 2014-11-02 13:55:53