我正在为我的网站制作一个 paypal 立即付款按钮,以添加可以使用的积分。
我了解立即购买和 ipn 的全部内容,但我想做的是,当用户完成付款时,IPN 应该有一种方法可以获取用户名,以便我可以将积分添加到数据库中。
有没有办法让用户名与交易一起发送以便它也被返回?谢谢你。
我正在为我的网站制作一个 paypal 立即付款按钮,以添加可以使用的积分。
我了解立即购买和 ipn 的全部内容,但我想做的是,当用户完成付款时,IPN 应该有一种方法可以获取用户名,以便我可以将积分添加到数据库中。
有没有办法让用户名与交易一起发送以便它也被返回?谢谢你。
请不要依赖通知网址。
您可以将字典对象中的“自定义”参数发送到Paypal IPN Docs中列出的 paypal 。
paypal_dict = {
"business": "yourpaypalemail@example.com",
"amount": "10000000.00",
"item_name": "name of the item",
"invoice": "unique-invoice-id",
"notify_url": "http://www.example.com/your-ipn-location/",
"return_url": "http://www.example.com/your-return-location/",
"cancel_return": "http://www.example.com/your-cancel-location/",
"custom": request.user.username, #or you can use request.user.pk
}
“自定义”值将与交易一起保存在贝宝的服务器上以及您的 IPN 对象中。这比在没有识别客户的情况下付款要好得多。
在按钮参数中,将notify_url
变量设置为最多 255 个字符的 URL。
payment_status
PayPal 将使用 IPN 详细信息( 、、payment_date
等)向该 URL 发送 HTTP POST 。
创建按钮时,将参数添加到此 URL,例如http://yourwebsite.com?username_for_credits=john%20doe 。当 PayPal 将进行 IPN HTTP POST 时,您将获得您想要的用户名。