【银企平台】银企平台对接招商银行云直连无前置机版(SM加密签名)
招商银行云直连(CMB_CMP)有前置机模式配置请参考:
https://wenku.my7c.com/article/454562502420850432?productLineId=8&isKnowledge=2
------------------------------------------------------------------------------------
下面开始则是银企平台对接招商银行云直连无前置机版的相关配置指导
首先:招商银行云直连开通流程建议咨询银行技术,也可参考附件:招商银行云直联开发指南(2.4)-新直联。(实施人员主要关注1,2章节)
前提:先打银企补丁PT168482或更高版本补丁
补丁下载:https://wenku.my7c.com/knowledge/specialDetail/325350427288158208?category=330013652612790528&id=330013155303041792&productLineId=8
补丁安装方法:https://wenku.my7c.com/school/6172?productLineId=8
注意:
首先需要确认银行跟客户签的云直连模式是 【标准免前置机模式(SM签名)】 还是 【SAAS模式(SM签名)】。
【标准免前置机模模式(SM签名)】:需要 先连招行测试环境测试,给出银行需要的测试报告并审核通过后才能上生产环境。
【SAAS模式(SM签名)】: 可直接上生产环境,要多一个银企平台私钥证书kingdee.txt(最新补丁已自带)。
银企平台-前置机配置-招商银行无前置机版
招行测试环境访问地址:http://cdctest.cmburl.cn/cdcserver/api/v2
招行生产环境访问地址:https://cdc.cmbchina.com/cdcserver/api/v2
2、银行业务配置-招商银行无前置机版-云直联模式选择 -根据客户与银行签约情况选择 对应模式(招行当前新推出的都是SM加密签名)
3、获取几个秘钥文件
如果是 【标准免前置机模模式(SM签名)】:测试环境银行会直接提供这些秘钥文件,跟下图国密生成工具上的备注是对应的,生产环境的这些密钥也是由银行提供给客户(不是通过工具生成)。
如果是 【SAAS模式(SM签名)】:直接用附件国密生成工具选生产来生成密钥即可(如下图),另外还需要部署kingdee.txt(银企平台最新补丁已自带,无需替换)
3.1、银企平台(ebservice705\ebservice\configs\banks\CMB_CMP下)需要配置的3个(aes.txt,bank.txt,rsa.txt)
bank.txt: 存放银行公钥
aes.txt:存放用户对称秘钥
rsa.txt:存放用户私钥
3.2、生产环境需要在网银端需上传2个(加密后的对称密钥,用户公钥),可参考下图,具体咨询银行技术。
4、完成以上配置即可去查询账户余额测试。
与银行进行签名验签交互成功后,其他业务配置问题
1、查询余额银行返回:DCPG028-报文格式非法,请确认你的请求报文是否满足json格式或你的加密密钥是否正确。
解决:请求报文格式无问题,银行解密数据失败,是由于客户公钥和加密后的aes对称密钥更新了要重新上传 到网银端
2、查询余额银行返回报错:字符串类型字段bbknbr长度不合法
解决:招行账户地区码不对,查询参考:http://web20.kingdee.com/eb_cloud_cnaps/cmbcode
3、查询余额银行返回报错:您的IP未定义在白名单中[xxx.xxx.xxx.xxx]
解决:银企平台服务器出口ip未定义在银行服务器的白名单中,找银行技术咨询解决
4、查询余额银行返回报错:*****无效签名
解决:
如果是标准免前置机模式生产环境:注意银企平台存放的几个密钥文件(aes.txt,bank.txt,rsa.txt)需要银行提供给客户,而不是用工具生成。
如果是SAAS模式(默认生产环境):
1)、新客户:一般是平台私钥kingdee.txt不对,上述最新补丁自带的kingdee.txt是生产环境的,且正确。如果你是通过其他渠道获取的可能不正确。
2)、老客户:客户之前是SAAS模式用的老的RSA密钥 且一直正常使用,现在招行切换了国密(SM)后报改错,所以需要更换银企平台的bank.txt和kingdee.txt这两个密钥文件,可提工单获取。
5、对私付款 默认走代发接口,报错:银行返回:“有审批业务模式不可直接经办,请选择正确的无审批业务模式或联系网银管理员在业务管理菜单中进行设置为无审批模式“
原因:网银设置了有审批模式,但银企平台-业务管理-银行业务配置-【代发是否需要网银授权】 默认是 否,因此银行返回该报错
解决建议:
1)、如果客户需要代发进行网银授权:那么就【代发是否需要网银授权】改成 是。再重新提交付款测试
2)、如果客户不需要代发进行网银授权:那么就联系 银行技术 按照提示 在网银端设置为无审批模式
6、对私付款默认走代发接口,报错:银行返回异常: -未找到合作方协议
原因:招行云直连代发其他接口NTAGCAPY交易代码编号银企默认传BYBK,代表代发其他,银行与客户未签该协议,在网银上查询到已签代发类型为BYFT=代发报销款。(具体问题要看具体客户的情况而定)
网银查询客户和银行已签约的代发类型见下图:
解决:在银企平台-银行业务配置-招商银行无前置机- 代发其他NTAGCAPY交易代码编号 维护成BYFT ,保存。再重新提交付款成功。
7、XXXXXXXXXX‘业务模式编号’为空或者有多个,请联系银企处理
原因:没有维护银行账户附加属性中的某种支付接口的业务模式编号,就去银行查,银行返回了空或者多个,银企平台就报了该错
解决:将银企平台-业务管理-帐号管理-招商银行 -无前置机版本 - 附加属性 - 所有的业务模式编号 维护正确。建议与银行确认每种业务模式编号的影响之后再维护。
获取业务模式编号:
方法1:报该错"XXXX‘业务模式编号’为空或者有多个,请联系银企处理"时,在银企平台日志中查找,举例如下:
方法2:在网银上查询客户的可操作业务模式
每一种业务都会配置最少一种模式,如果只有一种模式,默认配空即可。如果配了多种模式,则需要录入具体要用的模式,可以直接在网银上查看如下图(该界面具体位置请联系招行技术)
8、对私跨行付款失败,银行返回报错:ErrMsg:SDKN002-BNKFLG为“N”时,EACCTY不能为空
对私付款,跨行的时候需要传收款方银行名称和城市(付款单)
招行无前置机版的 付款接口选择配置
默认情况下:
1、业务做 对公 ,普通支付: 走 企银支付单笔经办(BB1PAYOP)接口,该接口中不用传收款方城市或地区码之类的字段
同步付款状态接口为:BB1PAYQR
2、业务做 对私,普通支付:走 代发其他经办NTAGCAPY 接口,该接口中在跨行的时候需要传收款方银行名称和城市
同步付款状态接口为:代发结果查询-按业务参考号NTAGCINY + 查询交易概要信息NTAGCINN
3、业务做 代发工资:走 代发工资经办NTAGCSAL接口,该接口中在跨行的时候需要传收款方银行名称和城市
同步付款状态接口为:代发结果查询-按业务参考号NTAGCINY + 查询交易概要信息NTAGCINN
星空付款单截图举例:
8、查余额报错: N******账户无权限,请确认该用户状态是否正常,如之前正常使用,请重新登录。
解决:该报错是银行返回的,找银行技术确认原因。
银行访问地址是带https,协议是http,这个在那改呀
请问加密后的密钥,如何上传到网银端?
很详细的文档,有用
补丁无法下载
收藏
【银企平台】银企平台对接招商银行云直连无前置机版(SM加密签名)
本文2024-09-16 22:15:46发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-46993.html