Django-Oscar的数据现金支付模块
django-oscar-datacash的Python项目详细描述
开始
沙箱
按照以下说明操作时,浏览沙盒可能会有所帮助 上面的文件夹,因为这是一个集成了 数据现金。
安装
来自PYPI:
pip install django-oscar-datacash
或来自github:
pip install git+git://github.com/tangentlabs/django-oscar-datacash.git#egg=django-oscar-datacash
将 'datacash' 添加到 已安装的应用程序中并运行:
./manage.py migrate datacash
创建适当的数据库表。
配置
编辑 设置.py 以设置以下设置:
DATACASH_HOST = 'testserver.datacash.com' DATACASH_CLIENT = '...' DATACASH_PASSWORD = '...' DATACASH_CURRENCY = 'GBP'
还有其他可用的设置(见下文)。显然,你需要 在测试环境中指定与 生产环境。
集成到签出
您需要在自己的内部使用 oscar.apps.checkout.views.paymentdetailsview的子类 签出视图。有关如何创建签出应用程序的本地版本,请参见 oscar的文档 。
重写 handle_payment 方法(默认情况下它不执行任何操作)并添加集成代码。见 沙盒站点 例如集成datacash支付 进入奥斯卡网站。
日志记录
网关模块使用指定的记录器datacash
第三方回调使用指定的记录器datacash。它是 建议您对该记录器使用 django.utils.log.adminMailhandler 以确保发送错误电子邮件以获得500个响应。
集成故障排除
许多datacash功能要求正确配置您的商户帐户。 例如,默认的datacash设置不包括:
- 使用历史交易记录付款
- 分割结算
在调查问题时,请确保已设置datacash帐户 正确。
与3rdman集成
使用实时欺诈服务需要提交相关数据的摘要作为一部分 最初的交易。提供了一个helper方法,它将提取所有 它需要奥斯卡的模特:
fromdatacash.the3rdmanimportbuild_data_dictfraud_data=build_data_dict(request=request,order_number='1234',basket=request.basket,email=emailshipping_address=shipping_address,billing_addres=billing_address)
然后在创建事务时将此数据作为命名参数传递:
ref=Facade().pre_authorise(...,the3rdman_data=fraud_data)
要接收回调,请在 urls.py中包含以下内容:
urlpatterns=patterns('',...(r'^datacash/',include('datacash.urls')),...)
当收到欺诈响应时,会发出一个自定义信号,您的客户 代码S应该听听。例子:
fromdjango.dispatchimportreceiverfromdatacash.the3rdmanimportsignals@receiver(signals.response_received)defhandle_fraud_response(sender,response,**kwargs):# Do something with response