0

我正在为我的网站制作一个 paypal 立即付款按钮,以添加可以使用的积分。

我了解立即购买和 ipn 的全部内容,但我想做的是,当用户完成付款时,IPN 应该有一种方法可以获取用户名,以便我可以将积分添加到数据库中。

有没有办法让用户名与交易一起发送以便它也被返回?谢谢你。

4

2 回答 2

1

请不要依赖通知网址。

您可以将字典对象中的“自定义”参数发送到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 对象中。这比在没有识别客户的情况下付款要好得多。

于 2012-04-26T21:43:33.930 回答
0

在按钮参数中,将notify_url变量设置为最多 255 个字符的 URL。

payment_statusPayPal 将使用 IPN 详细信息( 、、payment_date等)向该 URL 发送 HTTP POST 。

创建按钮时,将参数添加到此 URL,例如http://yourwebsite.com?username_for_credits=john%20doe 。当 PayPal 将进行 IPN HTTP POST 时,您将获得您想要的用户名。

于 2012-04-26T21:15:30.853 回答