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

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
datetime如何使用JodaTime在Java中设置时间属性   java固定算法的性能时间   java如何从JMenu中获取所选项以更改文本区域的文本颜色?   java配置单元UDF传递数组<string>作为参数   javaapachebeam和BigQuery   java与PrintWriter之间的差异。printf和PrintWriter。格式方法   继承如何处理按Java版本更改的导入,以及在多个版本上编译   xml java。lang.noClassDefFoundant生成错误   java如何使用包含映射的JSON发送POST请求?   java如何在任何应用程序的JAR文件中绑定MySql数据库?   Java脚本解释器   sslhttpclientjava。网SocketException:未实现未连接的socket   java如何为Android应用程序创建类似于Cron作业的东西   java JButton+radiobox+复选框   java内存管理将文件写入内存   java这是计算对象实例的有效方法吗?   用于死锁情况的java代码?   JavaSpring容器作为新实体插入,而不是存储在表中