paypal立即支付并返回变量

时间:2012-04-26 20:57:08

标签: database paypal-ipn

我正在为我的网站制作一个paypal pay现在按钮,以添加可以使用的信用。

我理解整个购买和ipn的事情,但我想做的是当用户完成他的工资时,应该有一种方法让IPN获得用户名,以便我可以将信用添加到数据库中。

有没有办法将用户名与交易一起发送,以便退回?谢谢。

2 个答案:

答案 0 :(得分:1)

请不要依赖通知网址。

您可以将字典对象中的'custom'参数发送到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对象保存在paypal的服务器上。与没有确定客户的付款相比,这是一个更好的选择。

答案 1 :(得分:0)

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

PayPal会使用IPN详细信息(payment_statuspayment_date等)向此网址发送HTTP POST。

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