合规开户

正式环境发送异步通知只支持443或80端口 其他端口暂时不支持

本文档定义CHINAPNR结汇入境业务开户接口规范,提供接口报文参数说明、示例报文、信息安全解决方案,并给出相关问题说明等,以帮助商户技术人员接入,便于尽快投入使用。
根据PCI-DSS检查要求,正式环境禁止使用低版本的SSL3.0 TLS1.0 TLS1.1等协议,请使用高于TLSv1.2及以上发送请求,推荐使用TLSv1.2

1 个人用户开户

环境 HTTPS请求地址
测试环境 https://hfgj.testpnr.com/mcs/individualComplianceReg.htm
正式环境 https://global.chinapnr.com/mcs/individualComplianceReg.htm

1.1 请求

参数 参数含义 长度 是否必填 参数说明
协议参数
version 网关版本 String(10) 不可空 固定值:1
signType 签名类型 String(2) 不可空 固定值:4。RSA加签
业务参数
requestId 请求流水号 String(32) 不可空 -
requestTime 请求时间 String(16) 不可空 yyyyMMddHHmmss
merchantAcctId 商户号 String(32) 不可空 由我司提供
platformUserId 用户平台ID String(32) 不可空 用户在商户系统中的唯一编号
platformRegTime 平台用户注册时间 String(16) 不可空 yyyyMMddHHmmss
contractEmailId 签约邮箱 String(40) 不可空 用于第三方签约注册。此邮箱建议由商户随机生成,需在商户系统中唯一,格式可以为:{商户英文简称}+{唯一标识}@{商户英文简称}.com
name 姓名 String(32) 不可空 -
certType 证件类型 String(2) 不可空 00-身份证(目前仅支持00)
01-护照
02-军官证
03-士兵证
04-回乡证
06-警官证
08-台胞证
13-其他
certId 证件号码 String(64) 不可空 支-
certExpDateStart 证件有效期起始 String(8) 可空 yyyyMMdd。
certExpDateEnd 证件有效期结束 String(8) 不可空 yyyyMMdd。如无则填写20990101
mobileNumber 手机号 String(11) 不可空 -
address 地址 String(128) 不可空 -
email 电子邮箱 String(40) 不可空 此邮箱号将用于接收合同文件,需保证正确性、真实性
bankCode 开户银行 String(20) 不可空 附件代发银行编码
acctType 账户类型 String(1) 不可空 1-对公 2-对私
bankAcct 账号 String(20) 不可空 -
acctName 户名 String(50) 不可空 对公时须与企业名称一致;
对私时须与姓名一致
province 省份 String(8) 条件必输 附录省份编码
area 地区 String(8) 条件必输 附录地区编码
bankBranch 支行名称 String(50) 条件必输 -
uniteBankCode 联行号 String(20) 条件必输 对公时,省+地区+支行名称,或者收款联行号至少一组不为空。
certPhotoCopyF 证件影印件正面 - 不可空 文件字节Base64建议压缩,一个请求中,影印件图片总大小不得超过10M
certPhotoCopyB 证件影印件反面 - 不可空 文件字节Base64建议压缩,一个请求中,影印件图片总大小不得超过10M
asyncNoticeFlag 是否接收异步通知 String(1) 不可空 固定填1,接收异步通知。
noticeUrl 后台通知地址 String(256) 不可空 互联网可访问。用于接收异步结果。
ext1 扩展字段1 String(2000) 不可空 店铺信息,请以jason方式按如下规则填写:{"storeInfo":[{"storeId":"AMAZON_eq3142412342","storelink":"www.amazon.com/dfadasf"},{"storeId":"EBAY_EQRWE","storelink":"www.ebay.com/234234"}]}其中,storeId为“平台名称_店铺ID”,storelink为店铺链接。注:如果没有店铺ID可以提供例如用户在电商平台的sellerid或者在平台的账号等唯一识别标记作为替代;如果没有店铺链接,值可填N/A。
ext2 扩展字段2 String(512) 可空 备用
signMsg 签名信息 String(2048) 不可空 参数1={参数1}&参数2={参数2}&……&参数n={参数n}然后进行商户密钥进行加签
-	-	仅对非空字段进行加签
acctName={acctName}&acctType={acctType}&address={address}&area={area}&bankAcct={bankAcct}&bankBranch={bankBranch}&bankCode={bankCode}&certExpDate={certExpDate}&certId={certId}&certType={certType}&contractEmailId={contractEmailId}&email={email}&merchantAcctId={merchantAcctId}&mobileNumber={mobileNumber}&name={name}¬iceUrl={noticeUrl}&platformRegTime={platformRegTime}&platformUserId={platformUserId}&province={province}&requestId={requestId}&requestTime={requestTime}&signType={signType}&uniteBankCode={uniteBankCode}&version={version}

1.2 应答

同步/异步返回参数说明:

参数名称 参数含义 最大长度 参数说明
version 版本号 String(10) 原样返回
signType 签名方式 String(2) 原样返回
requestId 请求流水号 String(32) 原样返回
merchantAcctId 商户号 String(32) 原样返回
platformUserId 用户平台ID String(32) 原样返回
ext1 扩展字段1 String(512) 原样返回
ext2 扩展字段2 String(512) 原样返回
userId 汇付唯一用户号 String(11) result为00时返回
result 状态 String(2) 01-审核中 02-失败 00-成功
errorCode 错误码 String(8) 错误码;失败时返回的错误代码,可以为空。
errorMsg 错误描述 String(256) 错误描述;失败时返回的错误信息,可以为空。
signMsg 签名信息 String(2048) 异步返回参数,同步无此参数
-	按以下固定字段顺序进行加签
- 仅对非空字段进行加签 merchantAcctId={merchantAcctId}&platformUserId={platformUserId}&requestId={requestId}&requestTime={requestTime}&result={result}&signType={signType}&userId={userId}&version={version}

2 企业用户开户

环境 HTTPS请求地址
测试环境 https://hfgj.testpnr.com/mcs/enterpriseRegV2.htm
正式环境 https://global.chinapnr.com/mcs/enterpriseRegV2.htm

2.1 请求

参数 参数含义 长度 是否必填 参数说明
协议参数
version 网关版本 String(10) 不可空 固定值:1
signType 签名类型 String(2) 不可空 固定值:4。RSA加签
业务参数
requestId 请求流水号 String(32) 不可空 -
requestTime 请求时间 String(16) 不可空 yyyyMMddHHmmss
merchantAcctId 商户号 String(32) 不可空 由我司提供
platformUserId 用户平台ID String(32) 不可空 用户在商户系统中的唯一编号
platformRegTime 平台用户注册时间 String(16) 不可空 yyyyMMddHHmmss
contractEmailId 签约邮箱 String(40) 不可空 用于第三方签约注册。此邮箱建议由商户随机生成,需在商户系统中唯一,格式可以为:{商户英文简称}+{唯一标识}@{商户英文简称}.com
name 企业名称 String(64)) 不可空 -
shortName 企业简称 String(20) 可空 -
type 企业类型 String(2) 不可空 1-个体工商户 2-企业
legalPerson 法人姓名 String(32) 不可空 -
legalCertType 法人证件类型 String(2) 不可空 00-身份证
legalCertId 法人证件号 SString(32) 不可空 -
legalCertExpDateStart 法人证件生效日期 String(8) 可空 格式yyyyMMdd。
legalCertExpDateEnd 法人证件时效日期 String(8) 不可空 格式yyyyMMdd。如无则填写20990101
legalMobile 法人手机号 String(11) 可空 -
contactName 联系人姓名 String(32) 不可空 -
contactCertType 联系人证件类型 String(2) 不可空 00-身份证
contactCertId 联系人证件号 String(32) 不可空 -
contactCertExpDateStart 联系人证件生效日期 String(8) 不可空 格式yyyyMMdd。
contactCertExpDateEnd 联系人证件失效日期 String(8) 不可空 格式:yyyyMMdd
若证件上无有效期,则填写20990101
contactMobile 联系人手机号 String(11) 不可空 -
contactEmail 联系人邮箱 String(40) 不可空 -
address 企业地址 String(128) 不可空 -
phone 企业电话 String(15) 不可空 -
orgCode 组织机构代码 String(45) 不可空 组织机构代码
orgExpDateStart 组织机构代码证生效日期 String(8) 不可空 日期格式:yyyyMMdd
orgExpDateEnd 组织机构代码失效日期 String(8) 不可空 格式:yyyyMMdd,若证件上无有效期,则填写20990101
bizLicenseCode 营业执照号 String(45) 不可空 工商登记号或统一社会信用代码。开户后不可变更。
bizLicenseExpDateStart 营业执照生效日期 String(8) 可空 日期格式:yyyyMMdd
bizLicenseExpDateEnd 营业执照失效日期 String(8) 不可空 日期格式:yyyyMMdd。若证件上无有效期,则填写20990101
taxRegCode 税务登记号 String(64) 条件必输 若类型为企业,且为旧证时必填。
taxRegExpDateStart 税务登记证生效日期 String(8) 可空 日期格式:yyyyMMdd
taxRegExpDateEnd 税务登记证失效日期 String(8) 条件必输 格式:yyyyMMdd, 税务登记号不为空时必填,若证件上无有效期,则填写20990101
bankCode 开户银行 String(20) 不可空 附件代发银行编码
acctType 账户类型 String(1) 不可空 1-对公 2-对私
bankAcct 账号 String(20) 不可空 -
acctName 户名 String(50) 不可空 对公时须与企业名称一致;
对私时须与法人姓名一致
province 省份 String(8) 条件必输 附录省份编码
area 地区 String(8) 条件必输 附录地区编码
bankBranch 支行名称 String(50) 条件必输 -
uniteBankCode 收款行联行号 String(20) 条件必输 对公时,省+地区+支行名称,或者收款联行号至少一组不为空。
legalCertPhotoCopyF 法人证件的影印件正面 - 不可空 文件字节Base64建议压缩,一个请求中,影印件图片总大小不得超过10M
legalCertPhotoCopyB 法人证件的影印件反面 - 不可空 文件字节Base64建议压缩,一个请求中,影印件图片总大小不得超过10M
contactCertPhotoCopyF 联系人证件的影印件正面 - 不可空 文件字节Base64建议压缩,一个请求中,影印件图片总大小不得超过10M
contactCertPhotoCopyB 联系人证件的影印件反面 - 不可空 文件字节Base64建议压缩,一个请求中,影印件图片总大小不得超过10M
bizLicensePhotoCopy 营业执照影印件 - 不可空 文件字节Base64建议压缩,一个请求中,影印件图片总大小不得超过10M
orgPhotoCopy 组织机构代码证影印件 - 条件必输 若类型为企业,且为旧证时必填,文件字节Base64建议压缩,一个请求中,影印件图片总大小不得超过10M
taxRegPhotoCopy 税务登记证影印件 - 条件必输 若类型为企业,且为旧证时必填,文件字节Base64建议压缩,一个请求中,影印件图片总大小不得超过10M
openLicensePhotoCopy 开户许可证影印件 - 可空 若类型为企业,且为旧证时必填,文件字节Base64建议压缩,一个请求中,影印件图片总大小不得超过10M
asyncNoticeFlag 是否接收异步通知 String(1) 不可空 固定值1,有异步
noticeUrl 后台通知地址 String(256) 不可空 互联网可访问。
ext1 扩展字段1 String(2000) 不可空 店铺信息,请以jason方式按如下规则填写:{"storeInfo":[{"storeId":"AMAZON_eq3142412342","storelink":"www.amazon.com/dfadasf"},{"storeId":"EBAY_EQRWE","storelink":"www.ebay.com/234234"}]}其中,storeId为“平台名称_店铺ID”,storelink为店铺链接。注:如果没有店铺ID可以提供例如用户在电商平台的sellerid或者在平台的账号等唯一识别标记作为替代;如果没有店铺链接,值可填N/A。
ext2 扩展字段2 String(512) 可空 备用
signMsg 签名信息 String(2048) 不可空 参数1={参数1}&参数2={参数2}&……&参数n={参数n}然后进行商户密钥进行加签
-	仅对非空字段进行加签
acctName={acctName}&acctType={acctType}&address={address}&area={area}&bankAcct={bankAcct}&bankBranch={bankBranch}&bankCode={bankCode}&bizLicenseCode={bizLicenseCode}&contactCertId={contactCertId}&contactCertType={contactCertType}&contactEmail={contactEmail}&contactMobile={contactMobile}&contactName={contactName}&contractEmailId={contractEmailId}&legalCertId={legalCertId}&legalCertType={legalCertType}&legalMobile={legalMobile}&legalPerson={legalPerson}&merchantAcctId={merchantAcctId}&name={name}&orgCode={orgCode}&phone={phone}&platformRegTime={platformRegTime}&platformUserId={platformUserId}&province={province}&requestId={requestId}&requestTime={requestTime}&shortName={shortName}&signType={signType}&taxRegCode={taxRegCode}&type={type}&uniteBankCode={uniteBankCode}&version={version}

2.2 应答

同步/异步返回参数说明:

参数名称 参数含义 最大长度 参数说明
version 版本号 String(10) 原样返回
signType 签名方式 String(2) 原样返回
requestId 请求流水号 String(32) 原样返回
requestTime 请求时间 String(16) 原样返回
merchantAcctId 商户号 String(32) 原样返回
platformUserId 用户平台ID String(32) 原样返回
userId 汇付唯一用户号 String(11) result为00时返回
result 状态 String(2) 01-审核中 02-失败 00-成功
errorCode 错误码 String(8) 错误码;失败时返回的错误代码,可以为空。
errorMsg 错误描述 String(256) 错误描述;失败时返回的错误信息,可以为空。
ext1 扩展字段1 String(512) 原样返回
ext2 扩展字段2 String(512) 原样返回
signMsg 签名信息 String(2048) 异步返回参数,同步无此参数
-	按以下固定字段顺序进行加签
- 仅对非空字段进行加签 version={version}&signType={signType}&requestId={requestId}&requestTime={requestTime}&merchantAcctId={merchantAcctId}&platformUserId={platformUserId}&userId={userId}&result={result}&errorCode={errorCode}&errorMsg={errorMsg}

3 个人/企业用户开户结果查询

环境 HTTPS请求地址
测试环境 个人:https://hfgj.testpnr.com/mcs/individualQry.htm
企业:https://hfgj.testpnr.com/mcs/enterpriseQry.htm
正式环境 个人:https://global.chinapnr.com/mcs/individualQry.htm
企业:https://global.chinapnr.com/mcs/enterpriseQry.htm

3.1 请求

参数 参数含义 长度 是否必填 参数说明
协议参数
version 网关版本 String(10) 不可空 固定值:1
signType 签名类型 String(2) 不可空 固定值:4。RSA加签
业务参数
requestId 请求流水号 String(32) 不可空 -
requestTime 请求时间 String(16) 不可空 yyyyMMddHHmmss
merchantAcctId 商户号 String(32) 不可空 由我司提供
platformUserId 用户平台ID String(32) 不可空 用户在商户系统中的唯一编号
signMsg 签名信息 String(2048) 不可空 参数1={参数1}&参数2={参数2}&……&参数n={参数n}然后进行商户密钥进行加签
-	按以下固定字段顺序进行加签
- 仅对非空字段进行加签 merchantAcctId={merchantAcctId}&platformUserId={platformUserId}&requestId={requestId}&requestTime={requestTime}&signType={signType}&version={version}

3.2 应答

同步/异步返回参数说明:

参数名称 参数含义 最大长度 参数说明
version 版本号 String(10) 原样返回
signType 签名方式 String(2) 原样返回
requestId 请求流水号 String(32) 原样返回
requestTime 请求时间 String(16) 原样返回
merchantAcctId 商户号 String(32) 原样返回
platformUserId 用户平台ID String(32) 原样返回
userId 汇付唯一用户号 String(11) 汇付唯一用户号
result 状态 String(2) 01-审核中 02-失败 00-成功
errorCode 错误码 String(8) 错误码;失败时返回的错误代码,可以为空。
errorMsg 错误描述 String(256) 错误描述;失败时返回的错误信息,可以为空。
signMsg 签名信息 String(2048) 参数1={参数1}&参数2={参数2}&……&参数n={参数n}然后进行商户密钥进行加签
-	按以下固定字段顺序进行加签
- 仅对非空字段进行加签 version={version}&signType={signType}&requestId={requestId}&requestTime={requestTime}&merchantAcctId={merchantAcctId}&platformUserId={platformUserId}&result={result}&errorCode={errorCode}&errorMsg={errorMsg}

demo下载

demo样例 操作
JavaDemo-个人合规开户.zip 下载
JavaDemo-企业合规开户.zip 下载

附录

说明 操作
代发银行列表v190.xlsx 下载
PNRI_代发省市_2018110201.xls 下载