我正在使用 https://github.com/paypal/rest-api-sdk-php

我想要显示项目描述评论,这里是代码:

$amountDetails = new Details();
    $amountDetails->setSubtotal('7.41');
    $amountDetails->setTax('0.03');
    $amountDetails->setShipping('0.03');

    $amount = new Amount();
    $amount->setCurrency('USD');
    $amount->setTotal('7.47');
    $amount->setDetails($amountDetails);

    $transaction = new Transaction();
    $transaction->setAmount($amount);
    $transaction->setDescription('This is the payment transaction description.');




    $RedirectUrls = new RedirectUrls();
    $RedirectUrls ->setReturnUrl('http://localhost/mrSurvey/public/#/pricing');
    $RedirectUrls ->setCancelUrl('http://localhost/mrSurvey/public/#/pricing');

    $payment = new Payment();
    $payment->setIntent('sale');
    $payment->setPayer($payer);
    $payment->setTransactions(array($transaction));
    $payment->setRedirectUrls($RedirectUrls);

所有我能看到的是描述,但我想看项目编号和小计,我缺少什么?

更新:
所以我读到我需要添加一些东西:所以我做了这样的事情:

$item = new Item();
 $item->setQuantity('1');
 $item->setName('benny');
 $item->setPrice('7.41');
 $item->setCurrency('USD');
 $item->setSku('blah');


 $items = new ItemList();
 $items->addItem(array($item));

$transaction->setItemList($items);

$payment = new Payment();
$payment->setIntent('sale');
$payment->setPayer($payer);
$payment->setTransactions(array($transaction));
$payment->setRedirectUrls($RedirectUrls);

$response = $payment->create($apiContext)->toarray();

return Response::json($response);

现在上面的代码给了我400错误…因为添加了项目的东西,任何线索?

从您获得的更新中可以看出您的正确轨道.但是看起来你也有一些问题,那就是陈述的问题

尝试将您的代码添加到catch并从paypal回显消息

try{
  //your code here
}
catch(PayPal\Exception\PayPalConnectionException $e) {
  //This will show error from paypal
  $e->getData()
}

我的猜测因为我得到了类似的错误是你没有正确添加你的物品(税,运费,小计等等)等等.试试这个样本@ https://github.com/paypal/PayPal-PHP-SDK/blob/master/sample/payments/ExecutePayment.php并让它首先工作,然后修改样本中的代码,以满足您的需求.

下面是我的一些代码修改,它适用于我.

请注意,您有项目描述和交易描述

//run x through loop with ++
 $x = 0;

 //for item 
 $items[$x] = new Item();
 $items->setName($item_name)
 ->setDescription($item_description)
 ->setCurrency($currency)
 ->setQuantity($item_quantity)
 ->setTax($item_tax)
 ->setPrice($item_price)
 ->setSku($item_sku);

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

  //for transaction
  $transaction = new Transaction();
  $transaction
  ->setAmount($amount)
  ->setItemList($itemList)
  ->setDescription($payment_description)
  ->setInvoiceNumber($invoice_number);

function getTotals($quantity,$tax,$price){
  $tax = $tax * $quantity;
  $subtotal = $price * $quantity;
  $total = $tax + $subtotal;
} 
total = getTotal($item_quantity,$item_tax,$item_price);

php – Paypal项目描述与其余api sdk的更多相关文章

  1. 保护接收paypal IPN通知的php脚本

    在我的网站中,我集成了一个接收IPN通知的PHP脚本,并向客户发送许可证密钥.此脚本位于PHP脚本所需的其他2个PHP文件的文件夹中…如果我放入一个.htaccess:我也阻止了paypal通知.我该如何保护它?您可以安全地将对IPN脚本的访问权限限制为以下IP地址列表:这可以通过以下方式完成:这样,只有Paypal才能访问IPN脚本.这个IP地址列表多年来一直相当稳定.如果Paypal添加了新地址,您可以向电子邮件添加报告并手动查看此类案例.

  2. php paypal快速结账问题

    我正在尝试在我的网站上集成paypal快速结账.我试图使用沙箱进行检查.当我从我的网站提交数据时,生成的令牌没有错误,但是当重定向到paypal时,它没有显示付款金额.顺便说一下,我正在使用paypalexpresscheckout向导的代码.如果有人指出我正确的方向,将会有所帮助.由于您没有传递所谓的“订单项详细信息”(产品数据),因此PayPal不会显示总金额.如果您只想显示当前购买的金额,请

  3. php – Paypal沙箱定期付款,初始金额待定

    创建使用上面列出的库的订阅的代码片段:为了防止有人遇到这样的麻烦,我的发现是:没有什么可以解决的–沙箱只是真的很慢,有时需要几天的时间才能使配置文件变得活跃并发送IPN.换句话说,沙盒根本不是很好的测试这些功能,只需要进行一次测试即可实现退款.即使生活有时候需要一点时间…我看过它需要几个小时,所以不要疯了.

  4. php – 发送购物车物品到PayPal

    我只需要能够发送我的数据库中的什么支付宝,以便用户可以支付这些项目.任何帮助都是非常感激的.谢谢!

  5. PHP验证PayPal捐款

    如何验证paypal捐款?在用户面板中,我有一个捐赠按钮.一旦有人真的捐款,我想对他做点什么.但我不知道如何检查用户是否真的捐赠了,或者只是点击捐赠按钮.查看PayPal的IPN当有人向您的Paypal帐户进行付款或捐赠时,Paypal将向您的网络服务器发送一封邮件,其中包含所有付款明细.然后,您可以将信息发送回Paypal,以确保付款真实…PayPal的网站甚至有一些codeexamples.包括一个PHP.请注意,您必须启用IPN并在您的PayPal帐户中定义回拨URL,然后才能开始使用IPN.

  6. php – Paypal项目描述与其余api sdk

    现在上面的代码给了我400错误…因为添加了项目的东西,任何线索?

  7. php – 使用CodeIgniter的PayPal IPN

    我正在尝试在CodeIgniter内置的网站上实现会员订阅服务.我希望使用PayPal来管理付款,并且我很难实现这一点.我想要实现的是:>用户填写会员表个人资料>用户选择一个订阅选项(8种选择中的1种–每种不同的价格)并提交表格>用户被发送到PayPal付款>成功付款后,用户将返回站点,个人详细信息将存储在创建用户帐户(成员资格)的数据库中.还添加了表单验证,我在CodeIgniter中使用for

  8. php – Paypal Rest API的工作

    我无法正确理解PaypalAPI.我想了解用于付款的PHPSDK.我也尝试查看PaypalIntegration.我无法理解的是.>它不需要登录用户吗?>用Paypal存储信用卡真正意味着什么?>我不希望用户访问Paypal的网站,我的意思是,付款应该完全在我的网站上进行,而不会被重定向到Paypal.我应该怎么做呢?

  9. php – PayPal IPN安全

    PayPalIPN向通知URL发送带有可变数量字段的POST请求,为了确认POST请求是合法的,我们需要将相同的请求以及另外的cmd=_notify-validate字段重新提交给PayPal,然后PayPal回复验证或无效.我的问题是,为什么我们需要将请求重新发送给PayPal?我们可以信任服务器正确解析IP,我认为我们可以信任来自PayPal的所有请求,不是吗?

  10. php – 将PayPal返回URL设置为localhost

    如果您尝试指定IP地址而不是localhost,该怎么办?无法在远程计算机上解析本地主机.它只是您知道localhost语句的本地DNS,并且是127.0.0.1.

随机推荐

  1. PHP个人网站架设连环讲(一)

    先下一个OmnihttpdProffesinalV2.06,装上就有PHP4beta3可以用了。PHP4给我们带来一个简单的方法,就是使用SESSION(会话)级变量。但是如果不是PHP4又该怎么办?我们可以假设某人在15分钟以内对你的网页的请求都不属于一个新的人次,这样你可以做个计数的过程存在INC里,在每一个页面引用,访客第一次进入时将访问时间送到cookie里。以后每个页面被访问时都检查cookie上次访问时间值。

  2. PHP函数学习之PHP函数点评

    PHP函数使用说明,应用举例,精简点评,希望对您学习php有所帮助

  3. ecshop2.7.3 在php5.4下的各种错误问题处理

    将方法内的函数,分拆为2个部分。这个和gd库没有一点关系,是ecshop程序的问题。会出现这种问题,不外乎就是当前会员的session或者程序对cookie的处理存在漏洞。进过本地测试,includes\modules\integrates\ecshop.php这个整合自身会员的类中没有重写integrate.php中的check_cookie()方法导致,验证cookie时返回的username为空,丢失了登录状态,在ecshop.php中重写了此方法就可以了。把他加到ecshop.php的最后面去就可

  4. NT IIS下用ODBC连接数据库

    $connection=intodbc_connect建立数据库连接,$query_string="查询记录的条件"如:$query_string="select*fromtable"用$cur=intodbc_exec检索数据库,将记录集放入$cur变量中。再用while{$var1=odbc_result;$var2=odbc_result;...}读取odbc_exec()返回的数据集$cur。最后是odbc_close关闭数据库的连接。odbc_result()函数是取当前记录的指定字段值。

  5. PHP使用JpGraph绘制折线图操作示例【附源码下载】

    这篇文章主要介绍了PHP使用JpGraph绘制折线图操作,结合实例形式分析了php使用JpGraph的相关操作技巧与注意事项,并附带源码供读者下载参考,需要的朋友可以参考下

  6. zen_cart实现支付前生成订单的方法

    这篇文章主要介绍了zen_cart实现支付前生成订单的方法,结合实例形式详细分析了zen_cart支付前生成订单的具体步骤与相关实现技巧,需要的朋友可以参考下

  7. Thinkphp5框架实现获取数据库数据到视图的方法

    这篇文章主要介绍了Thinkphp5框架实现获取数据库数据到视图的方法,涉及thinkPHP5数据库配置、读取、模型操作及视图调用相关操作技巧,需要的朋友可以参考下

  8. PHP+jquery+CSS制作头像登录窗(仿QQ登陆)

    本篇文章介绍了PHP结合jQ和CSS制作头像登录窗(仿QQ登陆),实现了类似QQ的登陆界面,很有参考价值,有需要的朋友可以了解一下。

  9. 基于win2003虚拟机中apache服务器的访问

    下面小编就为大家带来一篇基于win2003虚拟机中apache服务器的访问。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  10. Yii2中组件的注册与创建方法

    这篇文章主要介绍了Yii2之组件的注册与创建的实现方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下

返回
顶部