如何使用支付宝提供的支付接口?
友情提示:根据博主步骤很快便能完成,但是若想深刻理解,还需仔细看开发文档
目录
如何使用支付宝提供的支付接口?
1.搜索支付宝开放平台
2.进入网页登陆后点击控制台
3.下拉至最下方点击沙箱
4.将应用信息的基本信息和下方支付宝网关地址保存到文件中
5.点击查看 并且将公钥和密钥记录保存
6.点击沙箱账号 并且将商家信息以及买家信息记录并且保存
7.完成上述步骤后在编译器新建一个文件夹并且在其中新建三个文件
8.将下述代码放入alipay_public_key.pem中
9.将下述代码放入app_private_key.pem中
10.请将下述代码放入剩下的.py文件中
1. 在终端执行以下命令下载依赖
2. 将你第四步保存的appid和pid填写至其对应位置
3.将网关地址填写到倒数第二行引号中并且加一个英文问号
11.右键运行控制台会打印一个网址 复制到浏览器中打开即可
1.搜索支付宝开放平台
2.进入网页登陆后点击控制台
3.下拉至最下方点击沙箱
在这顺便给大家介绍一下沙箱环境
沙箱环境: 我们在开发的时候去真是的调用一下支付宝的支付接口,去完成完整的一个支付的流程的测试,看接口能否可以跑的通,如果跑的通的话,到时候项目部署上线之后,再把沙箱环境里的一个appId替换掉就可以了
4.将应用信息的基本信息和下方支付宝网关地址保存到文件中
5.点击查看 并且将公钥和密钥记录保存
记得将语言切换为非java语言
6.点击沙箱账号 并且将商家信息以及买家信息记录并且保存
大家进入这个页面后 就可以小小满足一下自己 可以随便控制账户余额,但是记得着仅仅只是数字,一会出现支付二维码千万别用自己的手机扫码支付,下方就是支付宝沙箱提供的卖家账户 用这个账户支付即可。
7.完成上述步骤后在编译器新建一个文件夹并且在其中新建三个文件
8.将下述代码放入alipay_public_key.pem中
-----BEGIN PUBLIC KEY-----
"""这里存放刚刚你记录下的公钥 请勿将上面下面的代码删除"""
-----END PUBLIC KEY-----
9.将下述代码放入app_private_key.pem中
-----BEGIN RSA PRIVATE KEY-----
"""这里存放刚刚你记录下的私钥 请勿将上面下面的代码删除"""
-----END RSA PRIVATE KEY-----
10.请将下述代码放入剩下的.py文件中
在这里还需要进行几个步骤:
1. 在终端执行以下命令下载依赖
pip install python-alipay-sdk
2. 将你第四步保存的appid和pid填写至其对应位置
订单号和支付金额可以随便填写
3.将网关地址填写到倒数第二行引号中并且加一个英文问号
from alipay import AliPay
# 第一步准备:支付宝的应用数据(调试阶段使用沙箱环境)
# 应用id(*)
app_id = '9021000134639525'
# 商户号(*)
pid = '2088721029176409'
# 公钥和私钥
public_key = open('alipay_public_key.pem').read()
private_key = open('app_private_key.pem').read()
# 订单支付的信息(自己系统的订单信息)
# 订单号
order_on = '20221400009090'
# 订单金额
amount = '4599'
# 支付页面展示的标题
subject = f"商城订单{order_on}支付"
# 初始化
pay = AliPay(
appid=app_id,
# 支付宝回调我们自己系统的url 等到部署到服务器配置就好了
app_notify_url=None,
# 私钥
app_private_key_string=private_key,
# 公钥
alipay_public_key_string=public_key,
# 开启debug(如果是部署好的项目要关掉)
debug=True,
)
# 4.生成手机应用的支付地址
# url = pay.api_alipay_trade_wap_pay(
# # 支付页面的标题
# subject=subject,
# # 商户生成的订单号(自己系统中的订单号)
# out_trade_no=order_on,
# # 订单支付的金额
# total_amount=amount,
# # 部署好项目以后在配置
# return_url=None,
# notify_url=None,
# )
# 5. 生成pc端浏览器网站的支付页面地址
url = pay.api_alipay_trade_page_pay(
# 支付页面的标题
subject=subject,
# 商户生成的订单号(自己系统中的订单号)
out_trade_no=order_on,
# 订单支付的金额
total_amount=amount,
# 部署好项目以后在配置
return_url=None,
notify_url=None,
)
# # 6.生成app端支付页面地址
# url = pay.api_alipay_trade_app_pay(
# # 支付页面的标题
# subject=subject,
# # 商户生成的订单号(自己系统中的订单号)
# out_trade_no=order_on,
# # 订单支付的金额
# total_amount=amount,
# # 部署好项目以后在配置
# return_url=None,
# notify_url=None,
# )
# 引号中为网关地址 请勿将引号删除并且记得粘贴后加一个英文问号
# 例如
# pay_url = 'https://openapi-sandbox.dl.alipaydev.com/gateway.do?' + url
pay_url = '这里是网关地址' + url
print(pay_url)
该段代码中实现了不同的环境下生成的支付页面 可以注释其中两个(代码中4.5.6)打开另一个看看他长什么样子
11.右键运行控制台会打印一个网址 复制到浏览器中打开即可
最后登录记录的id密码(买家信息)即可支付 再次强调切勿用自己支付宝扫描二维码支付!!!
订单支付或者过期后随便修改一个订单号(代码中的order_on)即可重复使用了,若不想自己修改可使用random函数让其每次生成一个随机订单号。