说明:因为个人没有资质使用支付功能 所以可以在沙箱环境进行测试使用
安装
pip install python-alipay-sdk --upgrade
初始化
<span class="hljs-keyword">from</span> alipay <span class="hljs-keyword">import</span> AliPay
<span class="hljs-function"><span class="hljs-keyword">def</span> <span class="hljs-title">pay</span><span class="hljs-params">(req)</span>:</span>
alipay = AliPay(
appid=<span class="hljs-string">""</span>,
app_notify_url=<span class="hljs-keyword">None</span>, <span class="hljs-comment"># 默认回调url</span>
app_private_key_string=app_private_key_string,
<span class="hljs-comment"># 支付宝的公钥,验证支付宝回传消息使用,不是你自己的公钥,</span>
alipay_public_key_string=alipay_public_key_string,
sign_type=<span class="hljs-string">"RSA2"</span> <span class="hljs-comment"># RSA 或者 RSA2</span>
debug=<span class="hljs-keyword">False</span> <span class="hljs-comment"># 默认False</span>
)
<span class="hljs-comment"># 如果你是 Python 3的用户,使用默认的字符串即可</span>
subject = <span class="hljs-string">"测试订单"</span>
<span class="hljs-comment"># 电脑网站支付,需要跳转到https://openapi.alipay.com/gateway.do? + order_string</span>
order_string = alipay.api_alipay_trade_page_pay(
out_trade_no=<span class="hljs-string">"20161112"</span>, <span class="hljs-comment"># 订单ID</span>
total_amount=<span class="hljs-number">0.01</span>, <span class="hljs-comment"># 金额</span>
subject=subject,
return_url=<span class="hljs-string">"https://example.com"</span>, <span class="hljs-comment"># 回调URL</span>
notify_url=<span class="hljs-string">"https://example.com/notify"</span> <span class="hljs-comment"># 可选, 不填则使用默认notify url</span>
)
<span class="hljs-keyword">return</span> redirect(<span class="hljs-string">'https://openapi.alipaydev.com/gateway.do?'</span> + order_string)
注意:
重定向的地址
沙箱环境:https://openapi.alipaydev.com/gateway.do?
正式环境:https://openapi.alipay.com/gateway.do?
在工具生成公钥私钥的时候 需要注意添加如下内容
公钥
-----BEGIN PUBLIC KEY-----
。。。
-----END PUBLIC KEY-----
私钥
-----BEGIN RSA PRIVATE KEY-----
。。。
-----END RSA PRIVATE KEY-----
RSA改为RSA2