# 一、在沙箱环境下实名认证:https://openhome.alipay.com/platform/appDaily.htm?tab=info # 二、电脑网站支付API:https://docs.open.alipay.com/270/105898/ # 三、完成RSA密钥生成:https://docs.open.alipay.com/291/105971 # 四、在开发中心的沙箱应用下设置应用公钥: 拿着在支付宝平台开发助手生成的公钥到沙箱应用下换取支付宝公钥 # 五、Python支付宝开源框架:https://github.com/fzlee/alipay # >: pip install python-alipay-sdk --upgrade # 七、公钥私钥设置 """ # alipay_public_key.pem -----BEGIN PUBLIC KEY----- 支付宝公钥 -----END PUBLIC KEY----- # app_private_key.pem -----BEGIN RSA PRIVATE KEY----- 用户私钥 -----END RSA PRIVATE KEY----- """ # 八、支付宝连接 """ 开发:https://openapi.alipay.com/gateway.do 沙箱:https://openapi.alipaydev.com/gateway.do """
>: pip install python-alipay-sdk --upgrade
libs ├── iPay # aliapy二次封装包 │ ├── __init__.py # 包文件 │ ├── keys # 密钥文件夹 │ │ ├── alipay_public_key.pem # 支付宝公钥 │ │ └── app_private_key.pem # 应用私钥 └── └── settings.py # 应用配置
import os # 支付宝应用APPID APP_ID = '2016093000631831' # 默认异步回调的地址,一般设置None就行 APP_NOTIFY_URL = None # 应用私钥文件路径 APP_PRIVATE_KEY_PATH = os.path.join(os.path.dirname(__file__), 'keys', 'app_private_key.pem') # 支付宝公钥文件路径 ALIPAY_PUBLIC_KEY_PATH = os.path.join(os.path.dirname(__file__), 'keys', 'alipay_public_key.pem') # 签名方式 SIGN_TYPE = 'RSA2' # 是不是测试环境 - 是不是支付宝沙箱 DEBUG = True # 支付链接 DEV_PAY_URL = 'https://openapi.alipaydev.com/gateway.do?' # 沙盒 PROD_PAY_URL = 'https://openapi.alipay.com/gateway.do?'
from alipay import AliPay from .settings import * # 对外提供支付对象 alipay = AliPay( appid=APP_ID, app_notify_url=APP_NOTIFY_URL, app_private_key_path=APP_PRIVATE_KEY_PATH, alipay_public_key_path=ALIPAY_PUBLIC_KEY_PATH, sign_type=SIGN_TYPE, debug=DEBUG ) # 对外提供的支付连接前缀 pay_url = DEV_PAY_URL if DEBUG else PROD_PAY_URL
-----BEGIN PUBLIC KEY----- 支付宝公钥 -----END PUBLIC KEY-----
-----BEGIN RSA PRIVATE KEY----- 应用私钥 -----END RSA PRIVATE KEY-----
# 先后台base_url UP_BASE_URL = 'http://127.0.0.1:8080' END_BASE_URL = 'http://127.0.0.1:8000' # alipay回调接口配置 # 上线后必须换成官网地址 # 同步回调的接口(get),先后台分离时通常设置前台页面url RETURN_URL = UP_BASE_URL + '/pay/success' # 异步回调的接口(post),必定设置为后台服务器接口 NOTIFY_URL = END_BASE_URL + '/order/success/'