支付宝小程序:授权通知参数说明
小编:啊南 1654阅读 2020.12.29
有关授权的常见问题,请参见 三方业务 授权 FAQ。
授权通知示例说明:实际收到的是 POST 请求,参数在 Post Body 中。
ISV_GATEWAY_URL?****&Data={"headers":{"User-Agent":"Mozilla/4.0","Content-Type":"application/x-www-form-urlencoded; charset=UTF-8"},"data":{"notify_type":"open_app_auth_notify","charset":"UTF-8","biz_content":"{"notify_context":{"trigger":"appstore"},"detail":{"app_auth_token":"202004BB9d3901a7d39d4350a49fb00000000001","user_id":"20881200000000002","re_expires_in":32140800,"auth_time":1587573752655,"app_refresh_token":"202004BB81e2730b7ecc4295a551e00000000001","auth_app_id":"20210000002","app_id":"20190000000","expires_in":31536000,"app_auth_code":"fa861f9d7032404bae53f54247000001"},"error":{}}","notify_time":"2020-04-23 00:42:32","sign":"****","auth_app_id":"2021000000000002","app_id":"2019000000000000","version":"1.0","sign_type":"RSA2","notify_id":"2020042300222004232009800000000007","status":"execute_auth"},"method":"POST","pid":"2088500000000002","url":"https://*****/gateway.do","timeout":16000}
整理 data 参数,按行显示如下:
"data":r {"notify_type":"open_app_auth_notify",r "charset":"UTF-8",r "biz_content":"{r "notify_context":{"trigger":"appstore"},r "detail":{r "app_auth_token":"202004BB9d3901a7d39d4350a49fb00000000001",r "user_id":"20881200000000002",r "re_expires_in":32140800,r "auth_time":1587573752655,r "app_refresh_token":"202004BB81e2730b7ecc4295a551e00000000001",r "auth_app_id":"20210000002",r "app_id":"20190000000",r "expires_in":31536000,r "app_auth_code":"fa861f9d7032404bae53f54247000001"r },r "error":{}r }",r "notify_time":"2020-04-23 00:42:32",r "sign":"****", "auth_app_id":"2021000000000002",r "app_id":"2019000000000000",r "version":"1.0",r "sign_type":"RSA2",r "notify_id":"2020042300222004232009800000000007",r "status":"execute_auth"r }授权通知字段详解公共通知字段
若 notify_type=open_app_auth_notify 且 status=execute_auth 表示开放平台应用授权发生了重新授权。
字段名 |
字段说明 |
是否必传 |
备注 |
notify_id |
通知校验 ID,唯一标识一笔通知 |
是 |
相同 notify_id 称之为同一笔通知 |
notify_type |
通知类型 |
是 |
授权变更时的notify_type值为:open_app_auth_notify |
status |
业务状态 |
否 |
授权变更时的status值为:execute_auth |
notify_time |
通知发送时间 |
是 |
通知发送时间tUTC+8,格式为yyyy-MM-dd HH:mm:ss。若为其它时区的服务器时间请自行转换 |
charset |
字符集 |
是 |
该字符集和支付宝发送Http报文的Content-Type的字符集一致,所有涉及字符集的地方均会 用于做urldecode,签名验签 |
version |
版本号 |
是 |
目前固定为1.0,商家仅应该识别version参数为空或者version=1.0的通知报文,其它应该拒绝 |
app_id |
第三方应用的 APPID |
是 |
APPID 是通知接收方(不一定对应业务方) |
auth_app_id |
授权小程序的 APPID |
否 |
主动通知的场景下不会有该参数 |
sign |
签名 |
是 |
支付宝对发出的通知进行的 RSA 签名 |
sign_type |
签名类型 |
是 |
目前支持RSA2(推荐使用)和RSA,该参数不参与签名 |
biz_content |
该笔通知的业务内容 |
是 |
针对应用授权变更通知,应用授权变更通知的内容参考以下表格 |
detail:授权详情
字段名 |
字段说明 |
是否必传 |
示例 |
app_id |
被授权方应用 ID(一般指第三方应用的 APPID) |
是 |
20190000000 |
auth_app_idt |
授权方的应用 ID(一般指商家小程序应用的 APPID) |
是 |
20210000002 |
auth_time |
授权发生时间,通知接受方需要根据auth_time 做令牌幂等 |
是 |
1491746302568 |
app_auth_code |
应用授权码(兼容用),该参数提供给通知接收方用于复用之前的换码逻辑,新接入方推荐直接使用报文中的 app_auth_token 即可 |
是 |
252a889e49af4e6cbtests17ae053X80 |
app_auth_token |
应用授权令牌 |
是 |
201603BB6e8df928test473d9d4c94d57d5c0X00 |
expires_in |
应用授权令牌失效时间,单位到秒 |
是 |
123456 |
app_refresh_token |
刷新令牌 |
是 |
201603BBdeb7d0ab1testbe898432a6490dfbX00 |
re_expires_in |
刷新令牌失效时间,单位到秒 |
是 |
123456 |
user_id |
授权商家的 user_id |
是 |
20881200000000002 |
notify_context:授权通知上下文信息
字段名 |
字段说明 |
是否必传 |
示例 |
trigger |
授权触发者 |
是 |
比如服务市场的服务订购通知,trigger为appstore |
trigger_context |
授权触发者相关联的上下文,具体取值和trigger 有关 |
否 |
目前值为空 ? |
error:相关的业务错误提示
字段名 |
字段说明 |
是否必传 |
示例 |
appstore_online_pay |
若系统服务商(ISV)签约了特殊的产品,且该产品的授权前置条件不满足则会有该值。目前仅有签约了口碑的“在线购买/口碑商品”产品的系统服务商(ISV)可能会收到该错误码 |
否 |
LACK_FACE_TO_FACE |
appstore_online_pay 的错误码
错误码 |
说明 |
解决方案 |
FAILt |
系统错误,由于未知原因导致的系统错误 |
建议系统服务商(ISV)联系并引导商家重新授权解决来解决 |
UNEXPECTED_CERTIFY_GRADE |
商家的个人认证等级不够 |
通知联系引导商家完成实名认证,再重新授权。 说明:个人用户完成个人实名认证,企业用户完成企业实名认证,参看 企业支付宝、个体工商户认证。 |
MERCHANT_DISCARD |
商家已经被清退;被清退的商家无法进行签约和发布商品t |
- |
LACK_FACE_TO_FACE |
商家未签约当面付 |
建议联系引导商家完成口碑开店流程之后,再重新授权。 |
相关推荐