接口说明
商家平台可以调用该接口根据模版发起电子合同,发起合同之前请先在诺诺平台完成实名认证--》模版制作--》导出模版字段信息。(正式认证地址: hetong.nuonuo.com 沙箱认证地址: hetongtest2.nntest.cn)。 调用合同接口次数大于5000次,价格面议,请联系商务400-700-8892。
API 方法名:nuonuo.electronicContract.raiseContractByTemplate 版本:V2.0
请求地址
| 环境 | 请求地址 |
|---|
| 正式环境 | https://sdk.nuonuo.com/open/v1/services |
| 沙箱环境 | https://sandbox.nuonuocs.cn/open/v1/services |
公共请求参数(消息头)
| 参数名 | 类型 | 必填 | 长度 | 说明 | 示例 |
|---|
| Content-type | String | 否 | - | MIME类型【消息头】 | - |
公共请求参数(消息体)
| 参数名 | 类型 | 必填 | 长度 | 说明 | 示例 |
|---|
| senid | String | 否 | - | 唯一标识,由企业自己生成32位随机码【消息体】 | - |
私有请求参数
| 参数名 | 类型 | 必填 | 长度 | 说明 | 示例 |
|---|
| templateInfo | Object | 否 | - | 模板信息 | - |
| └ templateId | Number | 否 | - | 模板Id | 775 |
| └ version | Number | 否 | - | 模板的版本号 | 1 |
| └ fieldList | Array | 是 | - | 需要输入的字段数组。如果模板中设置了必填,那么该字段不能为空 | - |
| └ fieldId | Number | 否 | - | 文本框/日期框/单选框/复选框字段id | 10158 |
| └ content | String | 是 | - | 文本框/日期框的内容。长度为新增合同模板时接口返回的对应长度。 | 文本框内容 |
| └ options | Array | 是 | - | 单、复选框选项选中的内容,字符串组成的数组 | ["杭州","宁波"] |
| contractInfo | Object | 否 | - | 合同信息 | - |
| └ contractName | String | 否 | - | 合同名称 | 测试合同 |
| └ orderNo | String | 是 | 36 | 订单编号,如果发起方企业已经使用该订单编号发起了合同,则直接返回已发起的合同信息,不再发起新的合同 | - |
| └ notifyUrl | String | 是 | - | 回调地址。当合同状态变化时,电子合同平台将会以post方式回调接口告知合同状态变化,通知格式为{"contractNo":"123","status":1,”changeTime:”2019-09-10 09:00:00”}(status 1签署中,2已完成,3已过期,4作废),接入用户收到回调结果后需返回200的code码确认收到消息(格式为{“code”:200}),回调失败后,在合同状态没有再次变化的前提下,每间隔5分钟重新回调一次,最多回调5次。 | http://www.baidu.com |
| └ msgPushSetting | Array | 否 | - | 消息推送配置 0全部通知(短信、诺言、极速开票客户端)、4不通知 (同时传入按照4来处理)', | 0 |
| └ signatoryEndTime | String | 是 | - | 签署截止日期yyyy-MM-dd HH:mm:ss格式,,不传或者大于2099-12-31 23:59:59视为永久。合同过期仅看日期,不看时分秒 | 2020-12-12 00:00:00 |
| └ expiryDate | String | 是 | - | 到期日期 | 2020-12-12 |
| └ originator | Object | 否 | - | 发起方信息 | - |
| └ originatorPhone | String | 否 | 11 | 发起方手机号 | 17000000000 |
| └ signFlag | Number | 否 | - | 是否签署:0-不签署 1-签署 | 1 |
| └ signatoryList | Array | 是 | - | 签署坐标信息 签署页数-多页自动签章;填写了多页盖章,忽略自动盖章位置 | - |
| └ signatoryCoordinateX | String | 否 | - | x轴坐标,签章类型选0时生效 | 100.0000 |
| └ signatoryCoordinateY | String | 否 | - | y轴坐标,传了signatoryList则必传 | 100.0000 |
| └ charterId | String | 是 | - | 印章id,不传使用默认印章 | 2887648642-5b0aa5d785584b9d8e3af65f27cf52b0 |
| └ signatoryPageList | Array | 否 | - | 签署页数,签章类型选0时生效 | [1,2] |
| └ stampType | Number | 是 | - | 盖章类型:0:单页章,1:骑缝章,默认是单页章 | 0 |
| └ receivers | Array | 否 | 10 | 签署方信息,发起方 signFlag=0时必传 | - |
| └ signType | Number | 否 | - | 签署类型,0:个人签署 1:企业签署 | 1 |
| └ receiverName | String | 否 | 50 | 签署方名字(长度限制:个人:2-19 企业:2-50) | 杭州测试企业 |
| └ receiverNumber | String | 是 | 20 | 签署方企业税号.signType=1时必传。(长度限制:10或15-20)) | 1234567890 |
| └ receiverPhone | String | 否 | 11 | 签署方手机号 | 17000000000 |
| └ carbonCopies | Array | 是 | 10 | 抄送方信息 | - |
| └ ccType | Number | 否 | - | 抄送人类型 0:个人 1:企业。不填默认为1 | 0 |
| └ ccUserName | String | 否 | 19 | 抄送人名字(长度:2-19) | 张三 |
| └ ccUserPhone | String | 否 | 11 | 抄送人手机号 | 17000000000 |
| └ ccUserEnterpriseName | String | 是 | 50 | 抄送人所在企业名称 (长度限制:2-50) | 诺诺网 |
| └ ccUserEnterpriseNum | String | 是 | 20 | 抄送人所在企业税号,ccType=1时必传。(长度限制:10或15-20) | qwe1234567 |
| └ certifyViewType | Number | 是 | - | 抄送方是否需要认证才能查看:0认证查看,1无需认证查看,默认0 | 0 |
响应参数
| 参数名 | 类型 | 必填 | 长度 | 说明 | 示例 |
|---|
| code | String | 否 | - | 响应码 | H200 |
| describe | String | 否 | - | 错误消息,调用成功时为空。 | 发起方手机号不能为空 |
| result | Object | 否 | - | 响应结果 | - |
| └ contractNo | String | 否 | - | 合同编号 | 2019070920522599812927980 |
| └ contractUrl | String | 否 | - | 合同链接 | https://filegw.nuonuo.com/xxxxxxx.pdf |
请求报文示例
NNOpenSDK sdk = NNOpenSDK.getIntance();
String taxnum = "23***789"; // 授权企业税号
String appKey = "Hn***XL";
String appSecret = "F65***65F";
String method = "nuonuo.electronicContract.raiseContractByTemplate"; // API方法名
String token = "2d484e**************pdui"; // 访问令牌
String content = "{
\"contractInfo\": {
\"expiryDate\": \"2020-12-12\",
\"orderNo\": \"\",
\"receivers\": [
{
\"receiverNumber\": \"1234567890\",
\"receiverPhone\": \"17000000000\",
\"receiverName\": \"杭州测试企业\",
\"signType\": 1
}
],
\"carbonCopies\": [
{
\"ccType\": 0,
\"ccUserName\": \"张三\",
\"ccUserEnterpriseName\": \"诺诺网\",
\"ccUserPhone\": \"17000000000\",
\"ccUserEnterpriseNum\": \"qwe1234567\"
}
],
\"signatoryEndTime\": \"2020-12-12 00:00:00\",
\"notifyUrl\": \"http://www.baidu.com\",
\"msgPushSetting\": [
\"0\"
],
\"contractName\": \"测试合同\",
\"certifyViewType\": 0,
\"originator\": {
\"signFlag\": 1,
\"originatorPhone\": \"17000000000\",
\"signatoryList\": [
{
\"signatoryPageList\": [
\"[1\",
\"2]\"
],
\"signatoryCoordinateY\": \"100.0000\",
\"signatoryCoordinateX\": \"100.0000\",
\"stampType\": 0,
\"charterId\": \"2887648642-5b0aa5d785584b9d8e3af65f27cf52b0\"
}
]
}
},
\"templateInfo\": {
\"templateId\": 775,
\"version\": 1,
\"fieldList\": [
{
\"options\": [
\"[\\"杭州\\"\",
\"\\"宁波\\"]\"
],
\"content\": \"文本框内容\",
\"fieldId\": 10158
}
]
}
}";
String url = "https://sdk.nuonuo.com/open/v1/services"; // SDK请求地址
String senid = UUID.randomUUID().toString().replace("-", ""); // 唯一标识,32位随机码,无需修改,保持默认即可
String result = sdk.sendPostSyncRequest(url, senid, appKey, appSecret, token, taxnum, method, content);
System.out.println(result);
返回码说明
| 返回码 | 说明 | 处理建议 |
|---|
H200 | 成功 | |
H10106 | 系统出错 | 查看原因解决或联系系统管理员 |
H10107 | 参数有误说明 | 请检查接口入参 |