通过PDT和IPN确认Paypal支付
pypa的Python项目详细描述
pypay提供了一个干净的api,用于通过pdt或ipn确认paypal支付。它将样板文件从与这些服务的交互中取出,并将paypal响应正常化为一些合理的东西。
在幕后,pypay使用优秀的Requests库来处理http。
安装
pip install pypay
用法
通过PDT
检查付款importpypayresponse=pypay.pdt_confirm('your_transaction_id','your_identity_token')
通过IPN
检查付款importpypayresponse=pypay.ipn_confirm('query_params_from_paypal')
您可以将查询参数作为字符串(例如,“quantity=1&;name=joe”)或dict传递。如果您使用django,则这一点尤其有用,因为您可以在request.post中放置它,并且一切都将正常工作。
响应对象
响应对象始终具有两个属性
response.confirmed# bool indicating if payment is verifiedresponse.details# dict containing all the Paypal variables that were returned
处理异常
如果对paypal的http调用出现问题,pypay将引发一个pypay.exceptions.RequestError。
传递给pdt_confirm和ipn_confirm的值经过健全检查,如果它们的类型不正确,将引发pypay.exceptions.InvalidPaypalData。
python版本支持
pypay使用Six兼容库在python 2.6、2.7、3.3、3.4、3.5和3.6上运行。