医保支付获取授权Token接版本号:0.
2支付宝(中国)信息技术有限公司版权所有文档修订记录版本编号修改日期修改说明备注0.
12021/02/02A0.
22021/02/04M入参增加订单总金额注:变化状态:A—增加,M—修改,D—删除目录目录31文档说明61.
1功能描述61.
2阅读对象61.
3业务术语62功能演示72.
1获取授权token流程73参数说明73.
1.
1请求地址73.
1.
2请求参数83.
1.
3租户应用创建(alipay.
commerce.
app.
create)103.
1.
4租户应用修改(alipay.
commerce.
app.
modify)123.
1.
5租户应用数据(alipay.
commerce.
app.
auth.
upload)143.
1.
6ML同步返回参数说明174签名机制194.
1生成待签名的字符串194.
1.
1需要参与签名的参数194.
1.
2生成待签名字符串194.
2DSA、RSA签名204.
3MD5签名205接入指南205.
1创建应用205.
2配置秘钥215.
3搭建和配置开发环境215.
3.
1下载服务端SDK215.
3.
2接口调用配置216附录226.
1应用服务名称226.
2业务流程ID226.
3统一错误码236.
4业务处理结果码236.
5公共错误码246.
6接入错误码276.
7证件类型28文档说明功能描述在各种业务场景下,支付宝体系外的应用可以使用此接口将数据输入到支付宝体系内,完成相应的业务场景需求.
阅读对象支付宝行业接口技术文档是面向具有一定的网站开发能力,了解ASP、PHP、JAVA、ASP.
NET等开发语言中的一种及SQL数据库语言的网站开发、维护和管理人员.
业务术语业务术语术语解释请求通过HTTP协议把需要传输的数据发送给接收方的过程.
返回接收方对业务数据进行校验并处理.
处理完成后将处理结果同步以XML数据形式返回给请求发送方.
功能演示获取授权token流程参数说明请求地址环境HTTPS请求地址正式环境https://openapi.
alipay.
com/gateway.
do请求参数请求参数说明参数参数名称类型(字节长度)参数说明是否可为空样例公共参数app_id应用IDString(32)支付宝分配给开发者的应用ID不可空2014072300007148method接口名称String(128)接口名称.
不可空alipay.
commerce.
app.
uploadalipay.
commerce.
app.
auth.
uploadalipay.
commerce.
app.
page.
uploadformat格式String(40)仅支持JSON可空JSONcharset参数编码字符集String(10)请求使用的编码格式,如utf-8、gbk、gb2312等.
不可空utf-8sign_type签名方式String(10)商户生成签名字符串所使用的签名算法类型,目前支持RSA不可空RSAsign签名String(256)商户请求参数的签名串,详见https://doc.
open.
alipay.
com/doc2/detail.
htmtreeId=200&articleId=105351&docType=1不可控详见示例timestamp请求时间String(19)发送请求的时间,格式"yyyy-MM-ddHH:mm:ss"不可空2014-07-2403:07:50version接口版本号String(3)调用的接口版本,固定为:1.
0不可空1.
0app_auth_token授权码String(40)应用授权概述https://doc.
open.
alipay.
com/doc2/detail.
htmtreeId=216&articleId=105193&docType=1可空biz_content参数集合参数的集合,最大长度不限,除公共参数外所有请求参数都必须放在这个参数中传递,具体参照各产品快速接入文档alipay.
commerce.
app.
upload接口无此参数可空应用参数service_name应用服务名称String(256)应用服务名称,参见"6.
1应用服务名称"不可空alipay.
commerce.
app.
createalipay.
commerce.
app.
modifyalipay.
commerce.
app.
datatarget_id目标用户String(64)支付宝用户ID不可空2088102122001010content服务数据参数参考"服务数据参数"可空JSON格式file上传文件的二进制流Byte[]文件以二进制形式写入可空服务数据参数tenant_app_id租户应用IDString(64)支付宝分配不可空10000000000activity_id业务流程IDString(64)业务流程ID,参见"6.
2业务流程ID"不可空query_dataquery查询条件String(2000)可空"{\"pageNo\":1,\"pageSize\":10}"body业务流程参数String(6000)业务流程请求参数说明,参见"3.
1.
3流程参数说明"可空字符串格式响应参数code返回码枚举值String(10)参见"6.
5公共错误码"不可空10000msg返回码类型String(100)接口调用成功,调用结果请参考具体的API文档所对应的业务返回参数可空Successsub_code子错误码String(100)参见"6.
3统一错误码"可空SYSTEM_ERRORsub_msg错误描述String(1000)依赖业务返回参数可空系统繁忙biz_code业务处理结果码String(256)参见"6.
4业务处理结果码"可空Verifybiz_msg业务处理结果描述String(512)Api成功请求之后返回的业务处理内容可空已过期data返回主体String返回结构体,其中包含response和time不可空{"response":"{}","time":1539696933313}返回主体response返回内容主体String(6000)根据不同业务返回不同内容可空返回主体中具体内容time系统时间String(128)系统时间不可空1539696933313租户应用创建(alipay.
commerce.
app.
create)body请求参数说明参数参数名称类型(长度范围)参数说明是否可为空样例tenantInfotenantName商家名称String(256)支付宝商家名称不可空支付宝(中国)网络技术服务有限公司loginId商家登录IDString(256)支付宝商家登录名不可空888888@alipay.
comremark商家说明String(128)商家信息补充说明可空主营业务appInfoappName租户应用名称String(128)租户应用名称不可空XX市XX医院认证生码支付应用productId产品码String(128)支付宝分配不可空2020031800003006remark租户应用介绍String(256)租户应用介绍可空提供XX业务configureListcode配置属性名String(128)属性名唯一键不可空value配置属性值String(1024)属性值不可空remark配置说明String(256)对属性的说明可空{"service_name":"alipay.
commerce.
app.
create","target_id":"208830200198880","content":{"body":{"tenantInfo":{"tenantName":"支付宝(中国)网络技术服务有限公司","loginId":"208800196978450@alipay.
com","remark":"支付宝(中国)网络技术服务有限公司"},"appInfo":{"appName":"支付宝","productId":"2020031800003006","remark":"支付宝"}}}}response返回内容说明参数参数名称类型(长度范围)参数说明是否可为空样例appId应用IDString(64)租户应用分配的应用ID,后续流程中传入不可空20190106845000000001appName租户应用名称String(128)租户应用名称不可空授权生码tenantId租户IDString(128)租户ID,注册之后系统分配不可空20190106845000000001productId产品码String(128)支付宝分配不可空2020031800000001gmtCreate创建时间String(128)创建时间不可空1546770445000gmtModified修改时间String(128)修改时间不可空1546770445000status状态String(128)状态不可空INITONLINEOFFLINE租户应用修改(alipay.
commerce.
app.
modify)content请求参数说明参数参数名称类型(长度范围)参数说明是否可为空样例tenant_app_id租户应用IDString(256)租户应用ID不可空20190106845000000001body请求参数说明与alipay.
commerce.
app.
create保持一致;{"service_name":"alipay.
commerce.
app.
create","target_id":"208830200198880","content":{"tenant_app_id":"20190106845000000001","body":{"tenantInfo":{"tenantName":"支付宝(中国)网络技术服务有限公司","loginId":"208800196978450@alipay.
com","remark":"支付宝(中国)网络技术服务有限公司"},"appInfo":{"appName":"支付宝","productId":"2019010100000001","remark":"支付宝"}}}}response返回内容说明参数参数名称类型(长度范围)参数说明是否可为空样例appId应用IDString(64)租户应用分配的应用ID,后续流程中传入不可空20190106845000000001appName租户应用名称String(128)租户应用名称不可空认证生码tenantId租户IDString(128)租户ID,注册之后系统分配不可空20190106845000000001productId产品码String(128)支付宝分配不可空2020031800003004gmtCreate创建时间String(128)创建时间不可空1546770445000gmtModified修改时间String(128)修改时间不可空1546770445000status状态String(128)状态不可空INITONLINEOFFLINE租户应用数据(alipay.
commerce.
app.
auth.
upload)获取授权token(get_auth_token)body请求参数说明参数参数名称类型(长度范围)参数说明是否可为空样例opt_type操作类型String(32)授权:AUTH查询:QUERY非空AUTHalipay_user_id支付宝用户IdString(32)支付宝用户Id非空2088684320983476req_biz_no业务请求流水号String(128)业务请求流水号,需保证唯一性非空ins_code机构编码String(32)结算机构编码非空NATHSApartner_id合作伙伴IdString(128)或作伙伴Id,返佣标识非空partner_city_code合作伙伴所在地城市编码String(128)医保结算地城市编码(国标)非空330100call_url授权回跳地址String(128)授权完成后回跳地址非空H5或者小程序地址total_amount订单总金额Number(10,2)单位:元非空123.
45ol_biz_type_code线上业务类型编码String(128)根据业务场景分配非空渠道申请接入后根据提交的业务场景分配该编码org_cfc_id定点医药机构编码String(1024)非空org_chnl_crtf_code机构渠道认证编码String(128)非空extend_params扩展参数JsonString(1024)业务扩展可空{"return_params":"medical_card_no=000102020011"}{"service_name":"alipay.
commerce.
app.
auth.
upload","target_id":"208830200198880","content":{"tenant_app_id":"20190106845000000001","activity_id":"get_auth_token","body":{"opt_type":"AUTH","alipay_user_id":"2088302379653004","req_biz_no":"322f8f92d260454ab05a1539fd3926ff","ins_code":"NATHSA","partner_id":"6572172737281","partner_city_code":"440300","call_url":"https://www.
alipay.
com","total_amount":123.
45,"ol_biz_type_code":"04031""org_cfc_id":"42545277674","org_hnl_crtf_code":"745245890","extend_params":{}}}}response返回内容说明参数参数名称类型(长度范围)参数说明是否可为空样例tenant_app_id租户应用IdString(128)租户创建后返回的应用Id不可空20190106845000000001req_biz_no业务请求流水号String(128)同入参业务请求流水号,在单次业务中,请求流水号一致不可空322f8f92d260454ab05a1539fd3926ffauth_url授权地址String(128)用户授权地址,opt_type为AUTH时返回可空alipays://platformapi/startappappId=77700284&page=pages%2Fmedical%2Findexalipay_user_id支付宝用户IdString(128)支付宝用户Id不可空2088302379653004auth_stas用户授权状态String(32)1:用户同意授权2:用户取消授权可空1auth_time授权时间String(128)opt_type为QUERY且authStas=1时返回可空1546770445000oc_token线上业务核验令牌String(128)同上可空2f8f1234fa2d524260454ab05a1531341fd392auth_no线上授权流水号String(128)同上可空ANO1234567890098765432123ol_biz_type_code线上业务类型编码String(32)同上可空04031org_cfc_id定点医药机构编码String(128)同上可空chnl_cfc_id渠道线上编码String(128)同上可空org_chnl_crtf_code机构渠道认证编码String(128)同上可空chnl_sign_data渠道信息签名串String(128)同上可空org_sign_data机构信息签名串String(128)同上可空{"code":1000,"msg":"Success","data":{"response":{"tenant_app_id":"20190106845000000001","req_biz_no":"322f8f92d260454ab05a1539fd3926ff","alipay_user_id":"2088302379653004","auth_url":"","auth_stas":"1","auth_time":"1546770445000","oc_token":"2f8f1234fa2d524260454ab05a1531341fd392","auth_no":"ANO1234567890098765432123","ol_biz_type_code":"04031","org_cfc_id":"42545277674","chnl_cfc_id":"67890098765","org_chnl_crtf_code":"NATHSA","chnl_sign_data":"34fa0454ab052d50454ab054ab0454ab0540454ab05fd3","org_sign_data":"2f8f1200454ab054540454ab05ab05b0513400454ab0505},"time":1545968660342}}ML同步返回参数说明含义支付宝对商户提供的请求数据进行处理后,返回给商户结果数据,以便商户根据这些数据进一步处理.
列XML同步返回参数说明参数参数名称类型(长度范围)参数说明是否可为空样例基本参数is_success请求是否成功String请求是否成功.
请求成功不代表业务处理成功.
T代表成功F代表失败不可空Terror错误代码String请求成功时,不存在本参数请求失败时,本参数为错误代码,参见"6.
2业务错误码"和"6.
3公共错误码"不可空业务参数样例正常输出T发生错误时输出:FILLEGAL_SIGN签名机制生成待签名的字符串需要参与签名的参数在请求参数列表中,除去sign、sign_type两个参数外,其他需要使用到的参数皆是要签名的参数.
在同步返回参数列表中,除去sign参数外,其他需要使用到的参数皆是要签名的参数.
生成待签名字符串例如:对于如下的参数数组:string[]parameters={"service=alipay.
commerce.
app.
upload","partner=2088101568338364","_input_charset=UTF-8","service_name=AAAA",};对数组里的每一个值从a到z的顺序排序,若遇到相同首字母,则看第二个字母,以此类推.
排序完成之后,再把所有数组值以"&"字符连接起来,如:_input_charset=UTF-8&partner=2088101568338364&service_name=AA&service=alipay.
commerce.
app.
upload这串字符串便是待签名字符串.
注意:没有值的参数无需传递,也无需包含到待签名数据中;签名时将字符转化成字节流时指定的字符集与_input_charset保持一致;如果传递了_input_charset参数,这个参数也应该包含在待签名数据中;根据HTTP协议要求,传递参数的值中如果存在特殊字符(如:&、@等),那么该值需要做URLEncoding,这样请求接收方才能接收到正确的参数值.
这种情况下,待签名数据应该是原生值而不是encoding之后的值.
例如:调用某接口需要对请求参数email进行数字签名,那么待签名数据应该是email=test@msn.
com,而不是email=test%40msn.
com.
DSA、RSA签名在DSA或RSA的签名时,需要私钥和公钥一起参与签名.
私钥与公钥皆是客户通过OPENSSL来生成得出的.
客户把生成出的公钥与支付宝技术人员配置好的支付宝公钥做交换.
因此,在签名时,客户要用到的是客户的私钥及支付宝的公钥.
请求时签名当拿到请求时的待签名字符串后,把待签名字符串与客户的私钥一同放入DSA或RSA的签名函数中进行签名运算,从而得到签名结果字符串.
通知返回时验证签名当获得到通知返回时的待签名字符串后,把待签名字符串、支付宝提供的公钥、支付宝通知返回参数中的参数sign的值三者一同放入DSA或RSA的签名函数中进建议与意见如果您在阅读技术文档时有任何建议和意见,请点击下面的链接跟帖回复,我们将根据您的反馈完善文档内容.
http://club.
alipay.
com/read.
phptid=8684674&fid=703MD5签名在MD5签名时,需要私钥参与签名.
MD5的私钥是以英文字母和数字组成的32位字符串.
商户可登录到商户服务中心(https://b.
alipay.
com),安装数字证书,在"技术服务"栏目中点击"交易安全校验码",即可查看.
请求时签名当拿到请求时的待签名字符串后,需要把私钥直接拼接到待签名字符串后面,形成新的字符串,利用MD5的签名函数对这个新的字符串进行签名运算,从而得到32位签名结果字符串(该字符串赋值于参数sign).
通知返回时验证签名当获得到通知返回时的待签名字符串后,同理,需要把私钥直接拼接到待签名字符串后面,形成新的字符串,利用MD5的签名函数对这个新的字符串进行签名运算,从而得到32位签名结果字符串.
此时这个新的字符串需要与支付宝通知返回参数中的参数sign的值进行验证是否相等,来判断签名是否验证通过.
接入指南创建应用要在您的应用中使用支付宝开放产品的接口能力,您需要先去蚂蚁金服开放平台(open.
alipay.
com),在管理中心中创建登记您的应用,并提交审核,审核通过后会为您生成应用唯一标识(APPID),并且可以申请开通开放产品使用权限,通过APPID您的应用才能调用开放产品的接口能力.
需要详细了解开放平台创建应用步骤请参考《开放平台应用创建指南》.
配置秘钥开发者调用接口前需要先生成RSA密钥,RSA密钥包含应用私钥(APP_PRIVATE_KEY)、应用公钥(APP_PUBLIC_KEY).
生成密钥后在开放平台管理中心进行密钥配置,配置完成后可以获取支付宝公钥(ALIPAY_PUBLIC_KEY).
详情请参考《配置应用环境》.
目前舍利云服务器的主要特色是适合seo和建站,性价比方面非常不错,舍利云的产品以BGP线路速度优质稳定而著称,对于产品的线路和带宽有着极其严格的讲究,这主要表现在其对母鸡的超售有严格的管控,与此同时舍利云也尽心尽力为用户提供完美服务。目前,香港cn2云服务器,5M/10M带宽,价格低至30元/月,可试用1天;;美国cera云服务器,原生ip,低至28元/月起。一、香港CN2云服务器香港CN2精品线...
10GBIZ服务商经常有看到隔壁的一些博客分享内容,我翻看网站看之前有记录过一篇,只不过由于服务商是2020年新成立的所以分享内容比较谨慎。这不至今已经有将近两年的服务商而且云服务产品也比较丰富,目前有看到10GBIZ服务商有提供香港、美国洛杉矶等多机房的云服务器、独立服务器和站群服务器。其中比较吸引到我们用户的是亚洲节点的包括香港、日本等七星级网络服务。具体我们看看相关的配置和线路产品。第一、香...
昔日数据怎么样?昔日数据新上了湖北十堰云服务器,湖北十堰市IDC数据中心 母鸡采用e5 2651v2 SSD MLC企业硬盘 rdid5阵列为数据护航 100G高防 超出防御峰值空路由2小时 不限制流量。目前,国内湖北十堰云服务器,首月6折火热销售限量30台价格低至22元/月。(注意:之前有个xrhost.cn也叫昔日数据,已经打不开了,一看网站LOGO和名称为同一家,有一定风险,所以尽量不要选择...