Pesapal支付网关的Django港
django-pesapal的Python项目详细描述
Pesapal支付网关的Django端口
文档
快速启动
安装django pesapal:
pip install django-pesapal
然后在项目中使用:
import django_pesapal
将django_pesapal添加到安装的应用程序中
INSTALLED_APPS = ( ... 'django_pesapal', )
在项目url.py中包含django_pesapalurlconf,如下所示:
url(r'^payments/', include('django_pesapal.urls')),
您可以通过将此添加到settings.py:
PESAPAL_TRANSACTION_DEFAULT_REDIRECT_URL = 'app_name:url_name' # this needs to be a reversible
运行python manage.py migrate以创建模型。
创建接收付款详细信息并返回pesapal iframe url的方法:
from django_pesapal.views import PaymentRequestMixin class PaymentView(PaymentRequestMixin): def get_pesapal_payment_iframe(self): ''' Authenticates with pesapal to get the payment iframe src ''' order_info = { 'first_name': 'Some', 'last_name': 'User', 'amount': 100, 'description': 'Payment for X', 'reference': 2, # some object id 'email': 'user@example.com', } iframe_src_url = self.get_payment_url(**order_info) return iframe_src_url
一旦付款处理完毕,您将被重定向到一个中间屏幕,在那里用户可以完成订购。单击“完成订购”按钮将检查付款状态以确保付款成功,然后将用户重定向到pesapal_transaction_default_redirect_url。
配置
Setting | Default Value |
---|---|
PESAPAL_DEMO | True |
PESAPAL_CONSUMER_KEY | ‘’ |
PESAPAL_CONSUMER_SECRET | ‘’ |
PESAPAL_IFRAME_LINK (if PESAPAL_DEMO=True) | ‘http://demo.pesapal.com/api/PostPesapalDirectOrderV4’ |
PESAPAL_IFRAME_LINK (if PESAPAL_DEMO=False) | ‘https://www.pesapal.com/api/PostPesapalDirectOrderV4’ |
PESAPAL_QUERY_STATUS_LINK (Demo Mode=True) | ‘http://demo.pesapal.com/API/QueryPaymentDetails’ |
PESAPAL_QUERY_STATUS_LINK (Demo Mode=False) | ‘https://www.pesapal.com/API/QueryPaymentDetails’ |
PESAPAL_OAUTH_CALLBACK_URL | ‘transaction_completed’ |
PESAPAL_OAUTH_SIGNATURE_METHOD | ‘SignatureMethod_HMAC_SHA1’ |
PESAPAL_TRANSACTION_DEFAULT_REDIRECT_URL | ‘/’ |
PESAPAL_TRANSACTION_FAILED_REDIRECT_URL | ‘’ |
PESAPAL_REDIRECT_WITH_REFERENCE | True |
PESAPAL_TRANSACTION_MODEL | ‘django_pesapal.Transaction’ |
历史记录
1.3.1(2019-07-16)
- 更新依赖项
- 支持PY37
- 移除下线PY34
1.3.0(2018-09-29)
- 支持Django 2.1
- 支持PY36
1.2.0(2016-12-11)
- 放弃对django 1.7的支持
- 修复和升级以支持django 1.8-1.10
- 使用Django的UuidField
1.1.0(2016-05-03)
- 支持Django 1.9
- 将付款方式字段长度从16更新到24
- 拆下PY33的支架。支持PY35
1.0.1(2015-11-21)
- 修复querydict错误
1.0.0(2015-11-11)
- 支持django 1.8
- 支持PY33和PY34
- 返回正确的IPN响应
0.3.4(2015-08-12)
- 重组流程以更好地支持IPN处理
0.3.3(2015-06-29)
- 安装程序生成尚未打包模板
0.3.2(2015-06-13)
- 解决文档格式问题
0.3.1(2015-06-13)
- 允许指定自己的事务模型
- 重定向时传递所有事务信息
- 更新中间模板
0.3(2015-06-12)
- 引入中间支付处理屏幕
- 将django版本更新至1.7+
- 添加支持以接收和处理IPN
- 保存有关事务和状态的所有详细信息
0.2.1(2015-04-03)
- 添加了测试沙盒
- 更新的django版本
- 已更新django uuidfield
0.2(2015-03-17)
- 支持匿名签出
- 添加获取付款状态的支持
- 主要的结构重构。使用MIXIN < /LI>
- 使用MIXIN和XML Builder
0.1.5(2014-09-25)
- 将依赖项固定到特定版本
- 更新导入方式
- 从初始化py中删除导入
0.1.4(2014-09-23)
- 修复导入错误。使用此方法的项目的测试可发货失败
- 将max django version设置为1.7
0.1.3(2014-07-18)
- PYPI包装
0.1.2(2014-06-30)
- 修复url.py中的导入错误
- 修复如何构造回调url
- 修正:live url使用https
0.1.1(2014-06-30)
- 右重定向URL的默认处理。交易和商户参考的模型验证
- 将设置重命名为conf.set default oauth redirect url
- 将django uuidfield添加到依赖项
0.1.0(2014-06-30)
- pypi上的第一个版本。