身份鉴权接口(二要素)
本文档定义CHINAPNR支付网关商户接入接口规范,提供接口报文参数说明、示例报文、信息安全解决方案,并给出相关问题说明等,以帮助商户技术人员接入,便于尽快投入使用。
根据PCI-DSS检查要求,正式环境禁止使用低版本的SSL3.0 TLS1.0 TLS1.1等协议,请使用高于TLSv1.2及以上发送请求,推荐使用TLSv1.2
提交参数
请求地址
环境 | HTTPS请求地址 |
---|---|
测试环境 | https://hfgj.testpnr.com/pay/idAuth.htm |
正式环境 | https://global.chinapnr.com/pay/idAuth.htm |
协议参数
参数名称 | 参数含义 | 最大长度 | 是否为空 | 参数说明 |
---|---|---|---|---|
version | 网关版本 | String(10) | 不可空 | 固定值:1.0 |
signType | 签名类型 | String(2) | 不可空 | 固定值:4 4-RSA加签 |
信息参数
参数名称 | 参数含义 | 最大长度 | 是否为空 | 参数说明 |
---|---|---|---|---|
merchantAcctId | 商户号 | String(32) | 不可空 | 由我司提供的商户号+01,共13位数字 |
terminalId | 终端号 | String(8) | 不可空 | 终端号,由我司提供的终端号 |
业务参数
参数名称 | 参数含义 | 最大长度 | 是否为空 | 参数说明 |
---|---|---|---|---|
trxId | 业务处理流水号 | String(32) | 不可空 | 商户端鉴权请求流水号 |
idType | 证件类型 | String(2) | 不可空 | 如果商户提交以商户为准,证件类型默认为身份证:1 |
name | 姓名 | String(64) | 不可空 | |
idNumber | 身份证号 | String(32) | 不可空 | |
ext1 | 扩展字段1 | String(512) | 可空 | 英文或中文字符串 |
ext2 | 扩展字段2 | String(512) | 可空 | 英文或中文字符串 |
signMsg | 签名信息 | String(2048) | 不可空 | 参数1={参数1}&参数2={参数2}&……&参数n={参数n}然后进行商户密钥进行加签 |
version={version}&signType={signType}&merchantAcctId={merchantAcctId}&terminalId={terminalId}&trxId={trxId}&idType={idType}&name={name}&idNumber={idNumber}
只对非空值的字段进行加签。
返回结果
查询结果会接口同步返回。
返回参数
参数名称 | 长度 | 参数说明 |
---|---|---|
version | String(10) | 版本号;固定值:1.0 |
signType | String(2) | 签名方式;固定值:4-RSA |
merchantAcctId | String(32) | 商户号 |
terminalId | String(32) | 终端号 |
trxId | String(32) | 商户端鉴权请求流水号 |
idType | String(2) | 证件类型 |
name | String(64) | 姓名 |
idNumber | String(32) | 身份证号 |
ext1 | String(512) | 扩展字段1 |
ext2 | String(512) | 扩展字段2 |
respCode | String(8) | 响应码;返回的响应代码,不为空。 |
respMsg | String(256) | 响应描述;返回的响应信息,可以为空。 |
result | String(1) | 响应码为000000时有返回值,否则为空 鉴权成功:S 鉴权失败:F |
signMsg | String(2048) | 签名信息; 对于所有值不为空的参数及对应值,按照字母顺序组成字符串 DSA:参数1={参数1}&参数2={参数2}&……&参数n={参数n}然后进行支付平台证书加密形成密文后进行2048位的Base64转码。 |
idNumber={idNumber}&idType={idType}&merchantAcctId={merchantAcctId}&name={name}&respCode={respCode}&respMsg={respMsg}&result={result}&terminalId={terminalId}&trxId={trxId}&version={version}
根据字母排序(如a**字段放在b**字段前面)验签。
请求示例
请参考具体Demo。 下载地址