我正在尝试使用PayPal作为我网站的付款。
我的网站只销售虚拟货币,例如在线游戏中的“钻石”。
所以在阅读后我开始使用Express Checkout for Digital Goods,是吗?或者我必须采用其他付款方式吗?
然后我的问题是在使用Express Checkout for Digital Goods时,如何传递自定义变量?
假设我想从我的数据库向paypal api支付user_id,diamond_id和其他一些变量。似乎paypal不支持自定义变量来传递api调用。我希望在用户完成付款后,Paypal通过我的服务器通过user_id和我通过的其他变量完成付款,这样我就可以轻松了解详细信息。
搜索后我找到了一些解决方案,
第一个解决方案是存储“TOKEN”(由“SetExpressCheckout”方法生成)和我的自定义变量,它属于数据库中的TOKEN,然后在付款完成后,paypal将通知我的服务器之前保存的相同TOKEN。所以我将根据TOKEN进行查询。 第二个解决方案是在RETURNURL变量中使用get样式http://www.mysite.com/successpayment.php?user_id=13&diamond_id=88所以我很容易抓住GET变量。 哪种解决方案是对的?有什么解决方案吗?以及如何确保付款确认,我的意思是,如果有人知道并破解我的回报。
提前致谢
答案 0 :(得分:1)
有两个部分可以在整个过程中成功识别您的订单:
要在通过成功或取消网址重定向用户时识别您的订单,只需通过网址的查询字符串传递订单ID。
当Paypal通过IPN发送有关交易和相关事件(退款,撤销,争议等)的通知时识别您的订单:Paypal支持传递变量,允许您将IPN与订单相关联记录在您的数据库中。
(我的一般建议是:只有你真的必须使用Paypal)