【问题标题】:How can get transaction details from paypal after successful payment支付成功后如何从paypal获取交易明细
【发布时间】:2012-11-13 01:13:44
【问题描述】:


我发送到贝宝的数据是

"https://www.paypal.com/cgi-bin/webscr/cmd=_cart&upload=1&business=seller.email@something.com&currency_code=USD&bn=BusinessName&return=http://www.sellersite.com&item_number_1=55&item_name_1=battery&amount_1=55&quantity_1=2&item_number_2=52&item_name_2=bat&amount_2=5&quantity_2=3"

我想在付款成功后在“http://www.sellersite.com”上向买家显示那些发送的数据(商品编号、商品名称、金额、数量)和贝宝交易 ID。 (假设卖家有paypal的商家账户,他会从网站的管理部分将该paypal id输入数据库。所以,我不会考虑他的paypal账户设置,我的工作只是为paypal支付创建环境给卖家。)

如果我写一个像

这样的脚本
$T_ID=$_REQUEST['tx']; // or $T_ID=$_GET['tx']; **ref(tx):- "https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/howto_html_paymentdatatransfer"

$item=$_REQUEST['item_number_1']; // or $item=$_GET['item_number_1'];

那我会从 paypal 获取这些数据吗?

请告诉我。

-谢谢。

【问题讨论】:

  • 感谢您的帮助。虽然我还没试过,但我相信你的回答。

标签: php paypal


【解决方案1】:

事情不会那么简单。您需要设置Payment Data Transfer (PDT),以便在买家完成付款后将详细信息发送回您的退货网址。

如果您只是要向用户显示详细信息,这很有用,但不建议您更新自己的数据库、发送电子邮件通知等,因为无法保证会到达此页面,因此代码不会一直运行。

对于这类事情,您需要使用Instant Payment Notification (IPN)。这与 PDT 非常相似,只是它总是将数据发布到您服务器上的 IPN 侦听器,无论用户是否将其返回到您的返回 URL,并且它一起发生在您的结帐系统之外。

【讨论】:

  • 是的,我从昨天开始就一直在研究 IPN,我觉得它比 PDT 更好。您能否告诉我,如果我的客户卖家只想接受即时付款类型(参考:cms.paypal.com/us/cgi-bin/…)并且想要避免除“已完成”之外的所有其他付款状态,那么我应该如何为他创建付款环境?我的意思是我可以在发送表单数据的同时将 payment_type='instant' 发送到贝宝吗?为了避免“已完成”以外的所有付款状态,必须向贝宝发送什么?
  • 还有一件事,我能否在“返回”页面(如“notify_url”页面)上从贝宝获取所有与交易相关的变量?还是更好地捕获“notify_url”页面上的数据,然后通过 SESSION 变量在“退货”页面上向买家显示这些数据?
  • 除了完成之外,你无法真正避免任何事情。如果付款失败,它就会失败,您会收到这样的回复。您可以通过确保相应地配置欺诈过滤器并且您没有启用电子支票作为选项来设置您的帐户以避免“待处理”。这可以在您的个人资料中的“付款接收首选项”下进行设置。不过,始终建议您检查状态,并据此处理订单后处理。
  • 我通常只是给买家一个基本的感谢信息,并告诉他们参考他们的电子邮件以获得正式收据。然后我使用 IPN 生成电子邮件收据并以这种方式发送。如果您确实想在退货页面上显示详细信息,则需要相应地配置 PDT。
  • 所以,最好从 paypal 发布的数据中检查 notify_url 页面上的付款接收方电子邮件地址、发票号码和 mc_gross,然后通过替换发送该数据(如果全部正确,则无需替换) mc_gross、发票号码和更正后的收件人电子邮件地址(如果与实际数据不匹配)?并检查管理页面上的付款状态并手动将它们从队列中清除以作为已售商品插入数据库?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-05-01
  • 2012-11-22
  • 2016-08-29
  • 2016-02-15
  • 2019-07-29
  • 2014-11-27
  • 2013-09-06
相关资源
最近更新 更多