本文主要介绍使用支付宝开放平台服务端 sdk 快速接入 三方开发基础包 产品。
商家或服务商可根据实际情况通过以下方式接入该产品:
- 商家自研:商家自助完成产品开通与接口调用。
- 服务商代开发:服务商需获取商家应用的代开发授权,再协助商家开通产品,然后通过第三方应用调用接口。
创建应用
登录,创建 小程序应用 或 网页/移动应用。
说明:生成的应用唯一标识 appid 可用于调用开放产品接口。
配置应用
产品绑定
小程序
创建应用后,在 开发 > 产品绑定 > 绑定产品,添加 三方开发基础包。
网页/移动应用
创建应用后,在 产品绑定 > 绑定产品,添加 三方开发基础包。
开发设置
进入应用的 开发设置 页面,配置应用开发所需信息。
接口加签方式
必填。用于防止数据篡改,保障应用和支付宝交互的安全性,可查看 。
服务器 ip 白名单
选填。用于提高商家访问开放平台的安全性,避免商家因应用私钥泄漏等原因导致业务受损,保障用户资金安全,可查看 。
支付宝网关
必填。应用调用接口发送 http(s) 请求至支付宝的目标地址(gateway),默认为 https://openapi.alipay.com
,不可修改。
应用网关
必填。用于接收支付宝异步通知消息,需要传入 http(s) 公网可访问网页地址,可查看 。
接口内容加密方式
选填。接口加密后,请求内容和响应内容将会由明文内容变为密文内容,具体信息可查看 。
注意:若接口无 body 则不使用 aes 密钥加密。
服务器域名白名单
选填。小程序 若需要获取客户端域外资源(例如获取图片、服务端数据等),需要配置服务器域名白名单。
h5域名
选填。小程序 使用 web-view h5 页面承载组件 时需要配置 h5 页面中所有域名地址(含静态资源地址,如图片、.js 文件地址等),详情可查看 配置 h5 域名。
授权回调地址
选填。网页/移动应用 指定的回调页面 url, 成功后,将在该 url 后携带授权码等信息并跳转至该页面。
说明:授权链接中配置的 redirect_uri 的值必须与此回调地址保持一致 (如:https://www.alipay.com) ,当填入该地址时,系统会自动进行安全检测。
上线应用
- 小程序应用:审核通过后自动上线。
- 网页/移动应用:需要手动上线。提交审核后,预计 1 个工作日的审核时间,请耐心等待,详细步骤可查看 上线应用。应用上线后,还需要完成开通才能在线上环境(生产环境)使用产品。
绑定商家账号
可选操作。在支付宝开放平台创建的应用归属于对应的开放平台账号。如果要在应用中使用支付和资金等相关产品,需要将应用和支付宝商家平台账号绑定,应用才可调用需要商家开通的产品,具体步骤可查看 绑定应用。
开通产品
应用上线后,还需要完成开通才能使用 三方开发基础包。请在 商家平台 > 的产品详情页面点击 立即开通,填写并提交相关信息。详情可查看 开通产品。
配置小程序隐私政策
根据《中华人民共和国个人信息保护法》,为进一步规范开发者的用户个人信息处理行为,保障用户合法权益,支付宝小程序无论是通过调用支付宝官方提供的涉及用户个人信息的相关接口,还是开发者自行收集用户个人信息,均需补充相应小程序隐私政策。详情可查看 小程序隐私政策配置。
创建应用
服务商登录 ,创建 第三方应用 并提交审核。详情可查看 创建&配置第三方应用。
说明:生成的第三方应用唯一标识 appid 可用于调用开放产品接口。
开通产品
服务商可以通过以下方式,协助商家开通 三方开发基础包 产品:
- 服务商在开放平台为第三方应用绑定此产品。
- 通过以下方式协助商家开通:
- 请商家登录 开通此产品。
- 收集商家资料,登录 协助商家开通此产品。
- 收集商家资料,通过 接口 协助商家开通此产品。
获取代开发授权
服务商需根据 第三方应用授权 指引,获取商家代开发授权,以此获取 app_auth_token
(商家授权令牌)用于调用商家券相关接口。
代商家申请用户信息
三方开发基础包 默认不自动回填用户信息,投放会员卡至 iot 设备或期望获取用户授权后自动回填用户信息的服务商,可查看 代申请用户信息 流程完成申请。
接口调用
服务商代商家调用服务端接口时:
- 需传入第三方应用授权得到商家授权令牌(app_auth_token)作为请求参数传入。
- 使用第三方应用的支付宝公钥、应用公钥、应用私钥、appid(证书模式使用第三方应用证书)构造 alipayclient,其余入参与接口文档相同。
更多详情可查看 代商家调用接口说明。
服务端 sdk 需要商家或服务商集成在服务端系统中,用于后续的服务端接口调用。
下载服务端 sdk
为了帮助开发者调用开放接口,支付宝提供了 v3 版本开放平台服务端 sdk,封装了签名与验签、http 接口请求等基础功能。
说明:请先下载对应语言版本的最新版 并引入开发工程。
接口调用配置
在 sdk 调用具体的接口前需要设置 alipayconfig 参数并初始化 apiclient 对象。alipayconfig 对象只需要设置一次。
公钥模式加签
接口加签方式为 公钥 模式加签时,设置 alipayconfig 参数的 java 语言示例代码如下(查看完整 ):
apiclient apiclient = configuration.getdefaultapiclient(); apiclient.setbasepath(url); // 设置alipayconfig参数(全局设置一次) alipayconfig alipayconfig = new alipayconfig(); alipayconfig.setappid(appid); alipayconfig.setprivatekey(private_key); alipayconfig.setalipaypublickey(alipay_public_key); apiclient.setalipayconfig(alipayconfig);
关键参数说明
配置参数
示例值解释
获取方式/示例值
url
支付宝网关(固定)。
https://openapi.alipay.com
appid
appid 即创建小程序后生成。
获取详情可查看 。
private_key
开发者私钥,由开发者自己生成。
获取详情可查看 。
alipay_public_key
支付宝公钥,由支付宝生成。
获取详情可查看 。
","id":"lacdd","rows":5,"cols":3,"hideborder":false}" id="lacdd">配置参数 | 示例值解释 | 获取方式/示例值 |
url | 支付宝网关(固定)。 | https://openapi.alipay.com |
appid | appid 即创建小程序后生成。 | 获取详情可查看 获取 appid。 |
private_key | 开发者私钥,由开发者自己生成。 | 获取详情可查看 。 |
alipay_public_key | 支付宝公钥,由支付宝生成。 | 获取详情可查看 。 |
公钥证书模式加签
接口加签方式为 公钥证书 模式加签时,设置 alipayconfig 参数的 java 语言示例代码如下:
apiclient apiclient = configuration.getdefaultapiclient(); apiclient.setbasepath(url); // 设置alipayconfig参数(全局设置一次) alipayconfig alipayconfig = new alipayconfig(); alipayconfig.setappid(appid); alipayconfig.setprivatekey(private_key); alipayconfig.setappcertpath(app_cert_path); alipayconfig.setalipaypubliccertpath(alipay_cert_path); alipayconfig.setrootcertpath(alipay_root_cert_path); apiclient.setalipayconfig(alipayconfig);
关键参数说明
配置参数
示例值解释
获取方式/示例值
url
支付宝网关(固定)。
https://openapi.alipay.com
appid
appid 即创建小程序后生成。
获取详情可查看 。
private_key
开发者私钥,由开发者自己生成。
获取详情可查看 。
app_cert_path
应用公钥证书文件本地路径。
获取详情可查看 。
alipay_cert_path
支付宝公钥证书文件本地路径。
获取详情可查看 。
alipay_root_cert_path
支付宝根证书文件本地路径。
获取详情可查看 。
","id":"njqhw","rows":7,"cols":3,"hideborder":false}" id="njqhw">配置参数 | 示例值解释 | 获取方式/示例值 |
url | 支付宝网关(固定)。 | https://openapi.alipay.com |
appid | appid 即创建小程序后生成。 | 获取详情可查看 获取 appid。 |
private_key | 开发者私钥,由开发者自己生成。 | 获取详情可查看 。 |
app_cert_path | 应用公钥证书文件本地路径。 | 获取详情可查看 。 |
alipay_cert_path | 支付宝公钥证书文件本地路径。 | 获取详情可查看 。 |
alipay_root_cert_path | 支付宝根证书文件本地路径。 | 获取详情可查看 。 |