当前位置: 首页 > 知识库问答 >
问题:

正确的方式发送多个项目到贝宝Restapi在PHP

邢俊悟
2023-03-14

将多个项目发送到paypal rest api的正确方式是什么?我已经阅读了文档和示例,据我所知:

申报交易

-

声明新项目列表

循环订单

-

-

结束循环

添加项目到项目列表

添加项目列表到交易

添加到事务

这是我一直在玩的代码,以使这项工作,但我得到了通常的贝宝重定向错误,这是标准错误时,有些东西是不正确的付款。

foreach ($orders as $unitcost)
{
    $totalamount = $totalamount + ($unitcost['price'] * $unitcost['quantity']);
}

$transaction = new Transaction();
$transaction->setamount($totalamount);
$transaction->setDescription('Order from Shop');
$itemList = new ItemList();

    foreach($orders as $unpaid)
        {

            $itemid = $unpaid['itemid'];
            $stmt = $db->prepare("SELECT name FROM `items` WHERE id = ?");
            $stmt->bindValue(1, $itemid);
            $stmt->execute();
            $name = $stmt->fetchColumn();

            $items = new Item();
            $items->setQuantity('1');
            $items->setName($name);
            $items->setPrice($unpaid['price']);
            $items->setCurrency($currency);





        }


$itemList->setItems(array($items)); 
$transaction->setItemList($itemList);

我可以成功地发送一个单项使用金额和金额细节类,它只是添加多个项目,我正在努力。

共有1个答案

裴英才
2023-03-14

知道了!

$i =0;
foreach($orders as $unpaid)

    {

        $itemid = $unpaid['itemid'];
        $stmt = $db->prepare("SELECT name FROM `items` WHERE id = ?");
        $stmt->bindValue(1, $itemid);
        $stmt->execute();
        $name = $stmt->fetchColumn();
        $items[$i] = new Item();
        $items[$i]->setQuantity($unitcost['quantity'])->setName($name)->setPrice($unpaid['price'])->setCurrency($currency); 
        $i++;

    }

$itemList = new ItemList();
$itemList->setItems($items);    


$transaction->setItemList($itemList);
$transaction->setamount($amount)

 类似资料:
  • 我使用贝宝rest api支付资源来更新付款金额和项目信息;我只是想改变项目的价格和税收;和运费金额;但返回MALFORMED_REQUEST;让我喝醉... request_data是: 并返回:{"name":"MALFORMED_REQUEST","消息":"MALFORMED_REQUEST","information_link":"https://developer.paypal.com

  • 我创建贝宝Restapi以下步骤1.创建登录ID由developer.paypal.com2.点击我的应用程序3.点击按钮"创建应用程序"创建测试应用程序4.通过单击testapp,我得到了两个api凭据(i)测试凭据(ii)实时凭据(通过单击显示) 我的代码中存在上述api(客户端ID和密码)的问题,代码给出的错误号为401或某个时间为400 我已检查“帐户资格” PayPal付款和登录与Pay

  • 这是正确的方式拆分一个项目列表,丰富每个项目,然后将这些丰富的项目发送到另一个频道吗? 接下来,CMS发布流被附加到publishPackageItem通道,并根据拆分后的类型,路由到特定的元素通道进行处理。拆分页面后,只有特定的元素类型才可能有订阅流。 最后,我的目标是订阅通道并相应地处理每个元素。我将此流订阅到ChannelPublishPage。每个订户可以不同地处理元素。

  • 我在沙箱中工作,使用PayPal REST。net SDK方法支付。创建一个信用卡对象。当所有参数有效且使用来自的测试CC编号时https://developer.paypal.com/webapps/developer/docs/integration/direct/accept-credit-cards/,付款对象从该方法返回,一切正常。 但是,当参数无效时,例如过去的过期日期或沙箱无法识别的

  • 等等。 在任何时候,我只能获得长达12个月的数据,因此,我使用类在驱动程序中使用以下函数创建12个输出: 在reducer中,我添加了一个cleanup函数,将生成的输出移动到适当的目录。 null

  • 问题内容: 我的工作按日期处理数据,需要将输出写入特定的文件夹结构。当前的期望是生成如下结构: 等等 在任何时候,我最多只能获得12个月的数据,因此,我正在使用类在驱动程序中使用以下函数创建12个输出: 在reducer中,我添加了一个清理功能,以将生成的输出移动到适当的目录。 问题:在将输出从_temporary目录移动到输出目录之前,reducer的清除功能正在执行。因此,由于所有数据仍位于_