2012-11-14 142 views
0

我目前在我的网站上有一个简单的PayPal按钮,用户输入一些信息并保存到数据库中,然后按钮将它们带到paypal以支付20英镑加入。问题是网站和paypal之间没有链接,所以我必须每次手动交叉检查谁在网站上加入了Paypal。PayPal IPN和交易ID

我查看了贝宝IPN看起来很理想,但我无法弄清楚如何匹配交易。

即IPN发给我一个txn_id,但我没有在我的最后。我需要一种方法来发送生成&,保存每笔交易的唯一ID,然后通过PayPal与用户通信,然后Paypal通过IPN发回给我。

我在Paypals劣质文档中很迷茫,所以任何来自SO的帮助都会有所帮助!

(Off topic rant:为什么PayPal有这么多的域名:paypal.com,paypal-business.com,x.com,paypal-marketing.com,...他们不会拼写网络钓鱼?!)

+1

您使用事务ID来获取有关事务本身的其他信息。此外,所有你需要的是贝宝账户用户名和交易ID。 –

回答

5

将您的ID(如DB行ID)通过custom变量传递到Paypal,您可以使用IPN中的custom变量交叉引用它。

https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_html_IPNandPDTVariables

+0

所以,我可以在我的HTML中添加如下按钮:''并且通过IPN传回给我。 – Mark

+0

这是正确的 –

+1

我投这个备份。答案很有道理。另外还有一个字段叫做INVOICE,如果你正在处理某种类型的实际订单/发票ID,你可以用它来代替CUSTOM。两者的工作原理都是一样的,但我喜欢将CUSTOM保存为没有特定字段的事物。无论使用哪种方法,如果要单独保存所有IPN数据,或者只需使用INVOICE/CUSTOM值作为密钥更新现有记录,则可以使用返回的字段与现有数据库表相关联。 –