AsiaPay(PayDollar)在Django Oscar上的支付集成

django-oscar-asiapa的Python项目详细描述


亚洲支付宝的支付整合。

安装

先决条件:

  • Django
  • Django奥斯卡

如果要安装pypi的最新稳定版本:

$ pip install django-oscar-asiapay

如果您有冒险精神并希望安装来自github的最新提交:

$ pip install -e git://github.com/bitmazk/django-oscar-asiapay.git#egg=asiapay

django-oscar-asiapay添加到INSTALLED_APPS

INSTALLED_APPS = (
    ...,
    'oscar',
    'asiapay',
)

将此应用程序连接到您的urls.py

urlpatterns = patterns('',
    ...
    url(r'^asiapay/', include('asiapay.urls')),
)

运行南部迁移:

./manage.py migrate asiapay

用法

请确保已安装django-oscar(已启动并正在运行)。 你可以通过覆盖oscar的应用程序来轻松定制它。请检查奥斯卡的 医生如果你不知道我在说什么。

要使用asiapay,请检查目录oscar_integration_example

基本上,OscarPaymentDetailsView已经被覆盖,所以用户 确认结帐后将重新发送至亚太地区。我们定制了 preview.html模板:

<form method="post" action="{{ asiapay_url }}">
        {% csrf_token %}
        <input type="hidden" name="merchantId" value="{{ merchant_id }}">
        <input type="hidden" name="currCode" value="{{ currency_code }}">
        <input type="hidden" name="orderRef" value="{{ order_number }}">
        <input type="hidden" name="amount" value="{{ order_total.incl_tax }}">
        <input type="hidden" name="successUrl" value="{{ success_url }}">
        <input type="hidden" name="failUrl" value="{{ fail_url }}">
        <input type="hidden" name="errorUrl" value="{{ error_url }}">
        <input type="hidden" name="lang" value="{{ asiapay_lang }}">
        <input type="hidden" name="payType" value="{{ asiapay_paytype }}">
        <img src="https://raw.githubusercontent.com/bitmazk/django-oscar-asiapay/master/payv_logo.gif" alt="{% trans "AsiaPay" %}" />
        <button id='place-order' type="submit" class="btn btn-primary btn-block js-disable-on-click" data-loading-text="{% trans "Sending..." %}">{% trans "Submit" %}</button>
</form>

设置

亚洲支付美元网址

连接到AsiaPay的URL。测试URL:

https://test.paydollar.com/b2cDemo/eng/payment/payForm.jsp

生产URL:

https://www.paydollar.com/b2c2/eng/payment/payForm.jsp

亚洲货币代码

默认值:“702”

您要使用的货币。请查看PayDollar集成指南。

亚洲语

默认值:“e”

付款页的语言。

  • “C”:繁体中文
  • “e”:英语
  • “F”:法语
  • “G”:德语
  • “j”:日语
  • “R”:俄语
  • 's':西班牙语
  • 't':泰语
  • “v”:越南语
  • “x”:简体中文

亚洲本地测试网址

使用此设置在本地测试来自ASIAPAY的响应。我们可以推荐 ngrok来屏蔽本地主机。

AsiaPay_Callback_https

默认值:真

使用https(true)或http(false)构造响应URL。

亚洲支付类型

默认值:“n”

要使用的薪资类型。请查看PayDollar集成指南。

ASIAPAY成功重定向

默认值:reverse('checkout:thank-you')

事务成功后重定向到的URL。例如使用:

ASIAPAY_SUCCESS_REDIRECT = '/'

或:

ASIAPAY_SUCCESS_REDIRECT = reverse_lazy('your_url_name')

ASIAPAY U故障重定向

默认值:reverse('basket:summary')

失败事务后重定向到的URL。例如使用:

ASIAPAY_SUCCESS_REDIRECT = '/'

或:

ASIAPAY_SUCCESS_REDIRECT = reverse_lazy('your_url_name')

路线图

查看github上的问题跟踪程序,以了解未来的里程碑和功能。

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

推荐PyPI第三方库


热门话题
关于JSP转发的java问题   强制Oracle驱动程序向java输出带有时区的时间戳。sql。使用getObject时的时间戳   Java中的配置单元UDF在创建表时失败   eclipse怀疑Java上下文加载器使用不再存在的文件   范围如何为我没有在JavaEE中编写的类定义单例对象?   java Eclipse未启动:JVM已终止。退出代码=14   仅存在于子类中的属性的java别名(Hibernate标准)   Java字符串插入错误   无法打开java@PropertySource,因为它不存在   java从多项目Maven配置生成WAR文件   java Hibernate@Lob注释不再有效:不能用几个字符串超过CLOB的总长度?   java jbutton的鼠标侦听器包含if/else循环阻塞的jvm?   java如何删除最近24小时安卓的通话记录   java Android服务+计数器不工作   java如何获取返回结果的服务器的数据,我希望将该结果更新到另一台服务器   java从javax获得“一切”是可能的。命名。初始上下文?   java Spring云门请求超时不适用于路径   java web应用程序会话缓存   java使用dialogflow的响应通过google助手打开我的应用程序   MongoDB添加createAt updatedAt字段java