获取签约链接
接口说明
[!NOTE]
交互签署模式需要在发起签约合同后,通过本接口取到签约的url,并转至用户签约页面去浏览合同完成合同签署动作。1、签约链接地址有效期为72小时,超过72小时候需要重新获取签约链接地址。
2、通过签约链接地址签署完成合同后默认是跳转到合同查看详情页面,如果跳转到自己的业务系统中,可以在签约链接地址后面加上跳转地址,格式为&backUrl=跳转地址(跳转地址需经过UrlEncode编码)。用户签署完成后立刻跳转到接入方指定页面上。跳转后会加入两个参数:targetUrl+"signNo="+signNo+"&status=1"signNo:签约流水号status:签约状态(1,已签;2,拒签)。平台可根据业务需要决定是否选用跳转功能。
http请求方式
[!NOTE]
POST application/x-www-form-urlencoded
http请求地址
[!NOTE]
$SERVICE_URL/v2/sign/link #其中$SERVICE_URL为生产或测试的地址
http请求参数
除公共必填参数外,还需要传以下参数
参数 | 类型 | 是否必填 | 默认值 | 说明 |
---|---|---|---|---|
applyNo | string | * | 合同编号(合同发起接口中生成的APL开头的编号) | |
fullName | string | * | 签约人名称(合同发起接口中签署人姓名) | |
identityCard | string | * | 签约人证件号(合同发起接口中签署人证件号) | |
identityType | int | * | 证件类型 1身份证, 2护照, 3台胞证, 4港澳居民来往内地通行证, 11营业执照, 12统一社会信用代码, 20子账号, 99其他 | |
viewMode | int | ? | 1,PC端合同签署后跳转到查看详情页隐藏两边信息 | |
useCustomDomain | int | ? | 1 使用自定义域名(注:嵌入小程序推荐设置该参数) |
代码实现
JAVA实现
Map<String, Object> params = bodyParams;
String url = SERVICE_URL + "/v2/sign/link";
params.put("applyNo", "APL1XXXXXXX"); //发起合同签署接口返回的APL编号
params.put("fullName", "唐糖"); //发起合同签署接口需要手动签署对象的姓名
params.put("identityCard", "500225198XXXXX8"); //发起合同签署接口中需要手动签署对象的证件号
params.put("identityType", 1); //证件类型,个人1 ,企业11
String str = HttpClientUtils.init().getPost(url, null, params, true);
System.out.println(str);
PHP实现
//构建请求工具
$requestUtils=new RequestUtils($serviceUrl, $appkey, $appSecret);
//初始化合同参数
$request=array(
"applyNo" => "APL0000XXXXXXXXX", //TODO *
"fullName" => "易XX", //TODO *
"identityCard" => "5002XXXXXXXXXXXXXXXXXX", //TODO *
"identityType" => 1, //TODO *
);
$response=$requestUtils->doPost("/v2/sign/link",$request);
http返回参数
[!NOTE]
返回response为application/json的数据,其字段说明如下
参数 | 类型 | 是否必返回 | 说明 |
---|---|---|---|
success | bool | * | 成功true;异常false |
msg | string | ? | 异常时,返回异常原因 |
resultCode | string | ? | 异常时返回 |
data | string | ? | 签约地址,成功时返回 |
[!NOTE]
返回结果,参考:
//正确响应:
{"data":"http://xxx.xxx.xxx","success":true}
//错误响应:
{"msg":"app_secret不可用","resultCode":"HTTP_PARAM_ERROR","success":false}