合同签署示例
该文档介绍两种常见的合同签署流程,提供对应示例代码,用以帮助用户快速对接。
(1)示例一:签署方类型、数量不固定,无统一格式的合同文件的场景。
(2)示例二:签署方类型、数量固定,有统一格式的合同文件的场景。
1 示例一
1.1 流程概览
该流程模拟发起一份人事合同,并完成签署。通过以下几个方面介绍该模式的实现过程:
(1)签署流程说明;
(2)实现示例;
1.2 流程说明
1.2.1 创建合同草稿
调用接口”创建合同草稿“,完成合同草稿的创建,该接口需要指定如下参数:
合同主题名称(subject);
合同签署方(signatories):参与合同签署的签署方、签署流程(actions)等信息,其中,签署流程中需要指定签署所用到的印章(sealId)。
是否发起合同(send),设置为不发起;
1.2.2 添加合同文档
合同草稿创建成功之后,需要为合同添加待签署的文档,契约锁提供两种方式进行合同文档的上传:
调用 ”用文件添加合同文档“ 接口,上传文件作为合同文档,并绑定合同;
调用 ”用模板添加合同文档“ 接口,用模板转换为合同文档,并绑定合同;
1.2.3 指定签署位置并发起合同
完成合同文档添加之后,调用”发起合同“接口即可完成合同的发起,此处需要传递的参数有:
合同ID(contractId);
签署位置(stampers):若指定公司签署方的签署位置,需要传入签署动作ID(actionId)与之关联,若指定个人签署方的签署位置,需要传递签署方ID(signatoryId)与之关联。
1.2.4 对接方签署
1.2.4.1 签署公章
调用接口“签署公章”,完成公章签署节点,以下是需要指定的参数:
合同ID(contractId)。
1.2.5 接收方签署
在对接方签署完成后,合同流转到个人接收方。个人接收方可通过以下三种方式进行签署:
登录契约锁签署
合同流转到接收方时,契约锁会给接收方发送消息,通知接收方签署合同。接收方可以登录契约锁完成合同签署(契约锁签署支持:PC端网页、移动端网页、契约锁APP等多种签署方式)。
内嵌页面签署
对接方调用“签署页面”接口,获取签署合同链接,用户打开链接即可查看、签署合同。页面支持跨哉,可以嵌入对接方的网站或APP中。
若对接方不希望用户接收短信通知,可以在“业务分类配置 -> 短信设置”中,关闭消息提醒。
JS-SDK方式签署
若对接方希望客户在其页面上完成签署操作,但无法内嵌页面,即可采用该方案,该方案需要部署
JS-SDK
以及请求转发接口。 若对接方不希望用户接收短信通知,可以在“业务分类配置 -> 短信设置”中,关闭消息提醒。
1.3 代码示例
- JAVA 示例代码
- .NET 示例代码
https://github.com/qiyuesuo/sdk-csharp-sample/blob/master/sdk-csharp-sample-v2/SendByCodeSetting.cs
- PHP 示例代码
- PYTHON示例代码
https://github.com/qiyuesuo/sdk-python-sample/blob/master/sample/SendByCodeSetting.py
2 示例二
2.1 流程概览
该流程模拟发起一份人事合同,并完成签署。通过以下几个方面介绍该模式的实现过程:
(1)业务分类配置说明;
(2)签署流程说明;
(3)实现示例;
2.2 业务分类配置说明
(1)登录契约锁云平台(生产环境地址: https://cloud.qiyuesuo.com, 测试环境地址: https://cloud.qiyuesuo.cn )。
(2)进入左侧目录 “文件 -> 业务分类” ,新建业务分类。
(3)点击业务分类右上角的“高级配置”,进入配置页配置业务分类。
2.2.1 配置签署方
在 基本信息设置 - 签署方 中,选择“按预设方式添加签署方” ,并根据业务需求设置接收方。
2.2.2 配置合同模板
在 基本信息设置 - 合同模板 中,配置合同模板。在创建合同时,合同模板将自动转换为合同文档。
2.2.3 配置签署流程
在选项 签署流程设置 中,选择 “按下方预设流程发合同并签署”。
为“企业签章”节点指定印章。
2.2.4 签署位置配置
在选项 指定签署位置 中,指定公章、个人签名、法人签名以及时间戳的签署位置。
2.2.5 参数配置
在选项 参数设置 中指定模板参数的填写方、是否必填等内容。
2.2.6 回调配置
在选项 回调设置 中配置回调地址。
合同在签署过程中,若发生签署、拒绝签署、撤回、退回等事件时,契约锁会回调通知对接方系统。
2.3 流程说明
完成业务分类配置后,即可调用接口创建、签署合同。
2.3.1 创建合同草稿并发起合同
调用接口“创建合同草稿” ,完成合同的创建与发起,以下是需要指定的参数:
合同主体名称(subject);
业务分类(category),即上一节配置好的业务分类;
设置合同签署方(signatories),签署方设置的类型与顺序需要与业务分类中的签署方配置保持一致;
是否发起合同(send),设置为发起;
发起方填写的参数模板参数值(templateParams)。
2.3.2 对接方签署
创建合同成功后。依次调用“签署公章”和“签署法人章”两个接口,完成发起方签署。
2.3.2.1 签署公章
调用接口“签署公章”,完成公章签署节点,以下是需要指定的参数:
合同ID(contractId)。
2.3.3 接收方签署
在对接方签署完成后,合同流转到个人接收方。个人接收方可通过以下三种方式进行签署:
登录契约锁签署
合同流转到接收方时,契约锁会给接收方发送消息,通知接收方签署合同。接收方可以登录契约锁完成合同签署(契约锁签署支持:PC端网页、移动端网页、契约锁APP等多种签署方式)。
内嵌页面签署
对接方调用“签署页面”接口,获取签署合同链接,用户打开链接即可查看、签署合同。页面支持跨哉,可以嵌入对接方的网站或APP中。
若对接方不希望用户接收短信通知,可以在“业务分类配置 -> 短信设置”中,关闭消息提醒。
JS-SDK方式签署
若对接方希望客户在其页面上完成签署操作,但无法内嵌页面,即可采用该方案,该方案需要部署
JS-SDK
以及请求转发接口。 若对接方不希望用户接收短信通知,可以在“业务分类配置 -> 短信设置”中,关闭消息提醒。
2.4 代码示例
- JAVA 示例代码
- .NET 示例代码
https://github.com/qiyuesuo/sdk-csharp-sample/blob/master/sdk-csharp-sample-v2/SendByCategory.cs
- PHP 示例代码
- PYTHON示例代码
https://github.com/qiyuesuo/sdk-python-sample/blob/master/sample/SendByCategory.py