支付宝密钥匹配教程
校验应用私钥和应用公钥是否匹配。
操作指引
- 打开支付宝开放平台密钥工具,左侧导航栏选择 密钥匹配。
- 填入商家应用私钥,或者点击 从文件导入 读取私钥文件中的内容。支持输入 2048 位的 RSA2 私钥(PKCS8/PKCS1 格式)。
- 填入商家应用公钥,或者点击 从文件导入 读取公钥文件中的内容。
- 点击 公私钥匹配 按钮,即可查看填入的应用公钥和应用私钥是否匹配。

支付宝密钥匹配教程
校验应用私钥和应用公钥是否匹配。
支付宝服务端如何接收通知及验签?
以支付接口接收通知并处理为例。
Java 异步验签示例
//获取支付宝POST过来反馈信息
Map< String , String > params = new HashMap < String , String > ();
Map requestParams = request.getParameterMap();
for(Iterator iter = requestParams.keySet().iterator();iter.hasNext();){
String name = (String)iter.next();
String[] values = (String [])requestParams.get(name);
String valueStr = "";
for(int i = 0;i < values.length;i ++ ){
valueStr = (i==values.length-1)?valueStr + values [i]:valueStr + values[i] + ",";
}
//乱码解决,这段代码在出现乱码时使用。
//valueStr = new String(valueStr.getBytes("ISO-8859-1"), "utf-8");
params.put (name,valueStr);
}
//切记alipaypublickey是支付宝的公钥,请去open.alipay.com对应应用下查看。
//boolean AlipaySignature.rsaCheckV1(Map<String, String> params, String publicKey, String charset, String sign_type)
boolean flag = AlipaySignature.rsaCheckV1 (params,alipaypublicKey, "UTF-8","RSA2");
Java异步验签示例(证书)
//获取支付宝POST过来反馈信息
Map<String,String> params = new HashMap<String,String>();
Map requestParams = request.getParameterMap();
for (Iterator iter = requestParams.keySet().iterator(); iter.hasNext ();) {
String name = ( String )iter.next();
String[] values = (String[])requestParams.get(name);
String valueStr="";
for(int i = 0;i < values.length; i++){
valueStr = (i== values.length-1)?valueStr+values[i]:valueStr+values[i] + ",";
}
//乱码解决,这段代码在出现乱码时使用。
//valueStr = new String(valueStr.getBytes("ISO-8859-1"), "utf-8");
params.put(name,valueStr);
}
//切记alipayPublicCertPath是支付宝公钥证书路径,请去open.alipay.com对应应用下载。
//boolean AlipaySignature.rsaCertCheckV1(Map<String, String> params, String publicKeyCertPath, String charset,String signType)
boolean flag = AlipaySignature.rsaCertCheckV1(params,alipayPublicCertPath,"UTF-8","RSA2");
PHP异步验签示例
php语言公钥与公钥证书验签方法相同。 $aop = new AopClient; $aop->alipayrsaPublicKey = '请填写支付宝公钥/支付宝公钥证书路径'; $flag = $aop->rsaCheckV1($_POST, NULL, "RSA2");
C#异步验签示例
验签方法中 keyFromFile 必传 false,否则验签失败。
// 获 取 支 付 宝 POST 过 来 通 知 消 息 , 并 以 “参 数 名 = 参 数 值 ” 的 形 式 组 成 数 组
// request 回 来 的 信 息 组 成 的 数 组
public Dictionary<string,string> GetRequestPost()
{
int i = 0 ;
IDictionary<string,string> sArray = new IDictionary<string,string>();
NameValueCollection coll;
// Load Form variables into NameValueCollection variable .
coll = Request.Form ;
//Get names of all forms into a string array .
String[] requestItem = coll.AllKeys;
for (i = 0;i < requestItem.Length ; i++)
{
sArray.Add( requestItem[i], Request.Form[requestItem[i]]);
}
return sArray ;
}
// 切 记 alipaypublickey 是 支 付 宝 的 公 钥 , 请 去 open .alipay .com 对 应 应 用 下 查 看 。
// bool RSACheckV1 ( IDictionary < string , string > parameters , string alipaypublicKey , string charset , string signType , bool keyFromFile )
bool flag = AlipaySignature.RSACheckV1(GetRequestPost(),alipaypublicKey,"UTF-8","RSA2",false);
C#异步验签示例(证书)
// 获 取 支 付 宝 POST 过 来 通 知 消 息 , 并 以 “参 数 名 = 参 数 值 ” 的 形 式 组 成 数 组
// request 回 来 的 信 息 组 成 的 数 组
public Dictionary<string,string> GetRequestPost()
{
int i = 0 ;
IDictionary<string,string> sArray = new IDictionary<string,string>();
NameValueCollection coll;
// Load Form variables into NameValueCollection variable .
coll = Request.Form ;
//Get names of all forms into a string array .
String[] requestItem = coll.AllKeys;
for (i = 0;i < requestItem.Length ; i++)
{
sArray.Add( requestItem[i], Request.Form[requestItem[i]]);
}
return sArray ;
}
// 切 记 alipayPublicCertPath 是 支付宝公钥证书路径 , 请 去 open .alipay .com 对 应 应 用 下 查 看 。
// bool RSACheckV1 ( IDictionary < string , string > parameters , string alipayPublicCertPath , string charset , string signType)
bool flag = AlipaySignature.RSACertCheckV1(dics, alipayPublicCertPath, "UTF-8", "RSA2");
支付宝使用公钥证书签名方式下,为什么开放平台网关的响应报文需要携带支付宝公钥证书 SN(alipay_cert_sn)?
开发者上传自己的应用公钥证书后,开放平台会为开发者应用自动签发支付宝公钥证书供开发者下载,用来对开放平台网关响应报文做验签。
但是支付宝公钥证书可能因证书到期或者变更 CA 签发机构等原因,可能会重新签发证书。在重新签发前,开放平台会在门户上提前提醒开发者支付宝应用公钥证书变更时间。
但为避免开发者因未能及时感知支付宝公钥证书变更而导致验签失败,开放平台提供了一种支付宝公钥证书无感知升级机制,具体流程如下:
和支付宝交换公钥是什么意思?
开发者私钥由开发者自行保管,把对应公钥提供给支付宝。相应的,支付宝提供自己的公钥给开发者,这称为交换公钥。
开发者使用开发者私钥对请求内容签名,支付宝收到请求后,会使用开发者公钥进行验签,验签通过证明信息来源可靠并且未篡改。
支付宝发送给开发者的数据中,支付宝也会使用自己的私钥进行签名。商家收到后,使用支付宝公钥验签,验签通过证明是支付宝发送的消息,并且未篡改。
什么是ACSS?
ACSS 是一套样式语言,用于描述 AXML 的组件样式,决定 AXML 的组件的显示效果。
ACSS 和 CSS 规则完全一致,可以 100% 兼容使用。为了契合小程序的开发,ACSS 对 CSS 进行了扩充,支持 px、rpx、vh、vw 等单位。ACSS 兼容各种手机端的样式。
详情可查看 ACSS 语法参考。
企业注册支付宝账号认证流程(PC 端)教程
进入 注册账号 页面,使用个人支付宝扫码、验证身份,人脸验证通过后即分配账号,电脑端将跳转企业认证页面,请根据下方指导进行操作。
上传主体证照、填写主体信息,根据商家主体类型(普通企业、个体工商户、党政机关、事业单位、社会组织、其他组织)完善主体信息。
说明:
需要通过多个渠道验证账号信息,以保障资金安全。
绑定邮箱作为企业账号的登录名(需邮箱验证),设置登录密码和支付密码,成功设置后企业账号才能登录、资金操作。
完成企业认证后,支付宝企业账号即可正常使用。
支付宝账号是登录支付宝各平台的唯一凭证,通过登录支付宝账号享受支付宝提供的服务。
支付宝账号分为 支付宝个人账号 和 支付宝企业账号,分别服务于个人和企业,需要不同的认证方式,个人账号不支持升级为企业账号。
本文主要介绍支付宝企业账号的注册和认证,支付宝企业账号 是完成了企业认证的支付宝账号,可以在支付宝开放平台、支付宝商家中心、支付宝服务商平台以及移动端支付宝 APP 上登录,获取支付宝提供的资源和服务。更多企业账号认证相关问题,可查看 帮助中心。
注意:持有金融机构业务牌照,从事银行业存款类、银行业非存款类、保险业、证券期货业、交易及结算类金融机构等金融行业的机构,请前往 机构服务平台 注册认证机构账号。
工商登记的企业、个体工商户,以及党政机关、事业单位、社会组织等才可以申请开通支付宝企业账号。
认证企业的主体证照,如营业执照、事业单位法人证书等清晰完整的彩色照片、彩色扫描件,或复印件加盖公章(红章)。
若有水印或用途说明务必于支付宝企业认证或蚂蚁集团/阿里巴巴集团业务相关。工商注册企业的企业信息(及法人身份证件信息)需与 国家企业信用信息公示系统 相同。
使用企业名下的对公银行账户,通过网银转账验证(需与主体证照的名称一致)。
准备一个从未注册过支付宝或淘宝的邮箱,后续作为登录账号。
提供开户许可证编号/基本存款账户编号,且法人扫脸核验身份,可同步开通网商银行企业账户。
支付宝账号是登录支付宝各平台的唯一凭证,可以通过登录该账号享受支付宝提供的服务。
支付宝账号分为 支付宝个人账号 和 支付宝企业账号,分别服务于个人和企业,需要不同的认证方式,个人账号不支持升级为企业账号,本文介绍支付宝个人账号的注册及认证。
支付宝个人账号 是完成了个人实名认证的支付宝账号,可以在支付宝开放平台、支付宝商家中心、支付宝服务商平台以及移动端支付宝 APP 上登录,获取支付宝提供的资源和服务。
说明:
在移动端打开支付宝客户端,点击 我的 > 点击页面顶部头像栏,进入个人信息页面 > 点击 实名认证,按照引导填写信息逐步完成认证即可。
应用创建只需要填写应用名称,应用上线时审核应用名称和应用图标,以下是审核规则,请开发者在配置应用名称时注意:
企业团餐合作资质证明格式
申请成为企业团餐行业商家,需要提交商户与企业团餐合作协议或者合作资质证明扫描件,合作资质证明格式如下:
支付宝(中国)网络技术有限公司:
我司 XXXX 公司 ,兹证明合作公司 XXXXXX 有限公司 在 XX 省 XX 市 XX 区 XX 为我司提供团餐(食堂)服务,合作有效期至 XXXX 年 XX 月 XX 日。
我司承诺该服务关系真实、有效、合法,且承诺支付宝为我司提供的产品服务功能只用于该地点团餐(食堂)场景。
如后续合作公司服务关系发生变化,我司将立即通知支付宝公司。
证明方: 被证明方:
(盖章处) (盖章处)
XXXX年XX月XX日 XXXX年XX月XX日
支付宝开发平台校园团餐合作资质证明格式
申请成为校园团餐行业商家,需要提交商户与企业团餐合作协议或者合作资质证明扫描件,合作资质证明格式如下:
支付宝(中国)网络技术有限公司:
我校 XXXX 学校 ,兹证明合作公司 XXXXXX 有限公司 在 XX 省 XX 市 XX 区 XX 为我校提供团餐(食堂)服务,合作有效期至 XXXX 年 XX 月 XX 日。
我校承诺该服务关系真实、有效、合法,且承诺支付宝为我校提供的产品服务功能只用于该地点团餐(食堂)场景。
如后续合作公司服务关系发生变化,我校将立即通知支付宝公司。
证明方: 被证明方:
(盖章处) (盖章处)
XXXX年XX月XX日 XXXX年XX月XX日
支付宝开发平台公共管理和社会组织分类细则及商家编码
code:A0013
支付宝开发平台金融理财分类细则及商家代码
code:A0012
支付宝开发平台生活缴费分类细则及商家代码
code:A0011
支付宝开发平台酒旅景区分类细则及商家编码
code:A0010
支付宝开发平台医疗卫生分类细则及商家编码
code:A0009
支付宝开发平台教育培训分类细则及商家编码
code:A0008
支付宝开发平台网络通讯分类细则及商家编码
code:A0007
支付宝开发平台物流运输分类细则及商家代码
code:A0015
支付宝开发平台交通出行分类细则及商家编码
code:A0006