1、概要

电子签名技术现在越来越普及,很多公司已应用电子合同。主要是因为纸张既不易保存,也不易查找,已不再作为管理合同的唯一方式。
kintone作为非常易于扩展的paas平台,自然也是可以非常简单的接入任何电子签名系统。
今天我们就以电子牵平台作为范例给大家介绍如何接入外部电子签名系统。

2、关于电子牵

电子牵是国内知名互联网企业字节跳动子公司巨量引擎下推出的电子签名服务。累计已有20w+中小企业和个人使用。

同时他们提供了完整的api,通过它,我们就能在kintone上完成一整套电子合同签名流程。

电子牵api文档:Docs

3、功能简要

以往用户常常使用kintone来做电子合同的管理,但是这些合同依然需要再手动打印成纸质合同,然后和对方进行签署并保存。
现在通过和电子牵的对接,这些电子合同将直接附带上电子签名,然后生成法律效应,完全可以抛弃纸质合同,直接用kintone来管理它们。

4、流程说明

  • 签署双方需要完成在电子牵上的认证及绑定信息

  • 通过kintone的合同管理来发起包括合同上传,撤销,发起签署,归档等操作

  • 将这些有效数据同步到电子牵平台

  • 发起短信及邮件通知到签署双方

  • 签署双方在电子牵的页面完成签署操作

  • 签署成功后,电子牵平台会自动发起回调到kintone平台,更新合同的所有签署信息

对于合同管理者来说:所有操作都只需在kintone完成,无需打开电子牵页面。

而对于需要签署的外部用户或者企业来说:所有的认证及签署都能在电子牵端完成。无需拥有或登录kintone平台。这样既保证了kintone系统的安全,又让用户无担忧的完成签署过程 。

电子牵时序图:

下面我们就来结合kintone和电子牵来开发一个demo程序(本示例程序使用nodejs作为服务端语言开发)

请提前准备

  • 电子牵token:appCode,appSecret等用来调用电子牵的api

  • 邮件服务器:用来发送邮件通知

  • 短信接口:用来发送短信通知

5、开发

因为这里涉及到了很多接口,包括文件上传等,同时上传到电子牵都需要添加签名,如果在客户端处理,会暴露签名密钥等安全问题,同时还有很多复杂的逻辑处理及回调处理。所以,认证和合同管理这两个应用我们都不是直接在kintone上调用电子牵的服务器,而是再架设了一个服务端中间件来处理这些操作。

服务端中间件的功能:

  • 提供kintone请求的接口:处理来自kintone的请求,并转发到电子牵平台。

  • 提供电子牵的回调接口:处理来自电子牵平台的回调请求(认证成功,签署成功等)。

  • 向用户发起签署的短信及邮件通知。

1)认证

通过电子牵的时序图我们知道,我们首先要对签署双方进行验证,并且绑定。

这边做了一个简单的kintone端到电子牵端的认证应用,来完成这电子牵平台的认证。

我们通过中间服务器,将kintone发起的认证请求转发到电子牵的“申请个人认证链接”接口,成功后就会返回适用于该用户的认证地址,同时会将这个认证链接通过短信及邮件发送给用户。

接下来只要用户完成认证后,就能实现和电子牵的绑定。中间服务器的认证回调接口会去kintone更新这条记录的认证状态。

注意:

电子牵的用户签署页面暂时只支持手机验证,因为需要用到人脸识别,上传身份信息等,建议在邮件中加入二维码链接,来方便用户使用。

服务端的代码片段示例:开发者网站代码查看

 2)合同管理

3)kintone端的自定义开发

功能:

  • 用户在kintone上发起合同上传,合同撤销,发起签署,合同归档等请求到中间服务器

  • 通过当前状态字段,禁用非当前状态能执行的功能,防止误操作

4)服务端中间件的开发

实现上传,撤销,签署,归档等所有电子牵接口

上传:

  • 上传分为文件上传模版上传

  • 文件上传是直接上传待签名的完整合同,而模版上传是将模版合同和合同数据一起传送给电子牵。

  • 这边使用的是文件上传,大家可以根据自己的实际需求来判断使用哪种方式来进行合同的上传。

签署:

  • 签署文件需要定义签名坐标或者关键字,这样用户拿到的签署页面会在默认的坐标或者关键字位置添加签名。
    在自动签署中是必须定义好的。而手动签署的话,用户可以根据参数选择是否调整签名位置。

  • 如果是企业自身,可以实现自动签署功能,来简化签署步骤。

  • 签署接口发起后,向签署双方发起短信邮件通知。

撤销:

  • 如果双方都没有进行签署操作,此时可以发起撤销操作,来中断此次合同的签署。

  • 撤销后kintone上的合同对应电子牵平台的transcode将重置。

  • 撤销后,可以重新上传合同文件,并且更新新的transcode。

归档:

  • 只有所有签署方都完成签署后,才能发起归档操作。

  • 归档后的合同,合同将生效,同时无法继续添加签署方,无法对合同做任何修改。

签署功能的代码片段:开发者网站代码查看

因为篇幅的关系,这边不对代码做太多的演示,具体我们将代码开源,有兴趣的可以在github上查看:

kintone-samples/sample-electronic-contract-CN (github.com)

应用方面的演示可以联系我们的产品部门,可以提供完整的演示环境。

注意事项

直接使用此处提供的程序范例的情况,才望子不予以保证程序的正常运行。

才望子不提供对程序范例的技术支持。

电子签名服务和云平台整合管理合同相关推荐

  1. cloud-华为云——云平台部署管理架构

    公有云 - 华为云 云平台部署管理架构图 #mermaid-svg-5b14kCsVe7ATBnT9 .label{font-family:'trebuchet ms', verdana, arial ...

  2. 华为云MVP:来自工业制造领域的微服务与云平台实践

    [摘要] 首先,和大家先聊聊的是为什么微服务.DevOps和云计算会在各个产业大行其道;其次,再谈谈微服务架构设计有那些自己独特的设计思想,和传统的SOA有什么区别;最后,我们再一起看一看在工业领域云 ...

  3. 紫光软件推云平台档案管理 逐鹿大数据时代

    随着全世界数值总量的不断提高和数值价值的一天比一天彰显,电子文件和档案管理市场正逐层升温.据国际知名调查研究机构计数,2013年全世界电子文件和档案行业总收益约为51亿美圆.有资深专家预先推测,国内市 ...

  4. 云服务之云平台介绍,华为云

    一.云平台介绍 1)云计算基础 1.什么是云计算     基于互联网的相关服务的增加,使用和交付模式     这种模式提供可用的,便捷的,按需的网络访问,进入可配置的计算资源共享池     这些资源能 ...

  5. 不同区域多机房、多台设备、微信云平台集中监控管理方案

    行业前景: 随着电力电子技术的发展和普及,信息化管理程度越来越高,机房成为了各行业发展的重要组成部分.机房数量及其配套的动力环境设备与日俱增,对于在不同地区的机房.上百上千台设备,这在实际的机房维护管 ...

  6. (二)spring cloud微服务分布式云架构 - 整合企业架构的技术点

    spring cloud本身提供的组件就很多,但我们需要按照企业的业务模式来定制企业所需要的通用架构,那我们现在需要考虑使用哪些技术呢? 下面我针对于spring cloud微服务分布式云架构做了以下 ...

  7. spring cloud微服务分布式云架构 - 整合企业架构的技术点

    spring cloud本身提供的组件就很多,但我们需要按照企业的业务模式来定制企业所需要的通用架构,那我们现在需要考虑使用哪些技术呢? 下面我针对于spring cloud微服务分布式云架构做了以下 ...

  8. (二)spring cloud微服务分布式云架构-整合企业架构的技术点

    spring cloud本身提供的组件就很多,但我们需要按照企业的业务模式来定制企业所需要的通用架构,那我们现在需要考虑使用哪些技术呢?Spring Cloud大型企业分布式微服务云架构源码请加一七九 ...

  9. spring cloud微服务分布式云架构-整合企业架构的技术点

    spring cloud本身提供的组件就很多,但我们需要按照企业的业务模式来定制企业所需要的通用架构,那我们现在需要考虑使用哪些技术呢?完整项目的源码来源 技术支持一七九一七四三三八零 下面我针对于s ...

  10. spring cloud微服务分布式云架构 - 整合企业架构的技术点(二)

    点击上面 免费订阅本账号! 本文作者:it菲菲 原文:https://yq.aliyun.com/articles/672231 点击阅读全文前往 spring cloud本身提供的组件就很多,但我们 ...

最新文章

  1. k8s 自定义dns_K8S 生态周报| Docker v19.03.10 正式发布
  2. explain mysql 调优_explain mysql性能优化
  3. Hyperledger Fabric 三种node节点 (1) 基本概念
  4. hadoop 2.x HA 出现ssh不能解析问题记录。
  5. HYSBZ 1010 玩具装箱toy (决策单调DP)
  6. 运行python脚本时出现no module named cv2怎么解决
  7. 通过phoenix导入数据到hbase出错记录
  8. 会c语言如何快速入门python,初学者如何从C语言到Python的转化(北大陈斌老师的举例 )...
  9. meta http-equiv(属性详解)
  10. 【JavaEE】第零章(2020.03.06)模式 表 索引
  11. linux下木马程序病原体的制作和运行
  12. J2SDK1.5-J2SDK5.0,哈哈
  13. 卡尔曼滤波算法及C语言实现_源代码
  14. 【单片机】唯一设备ID UID固件加密
  15. Matlab如何打开新版本程序,求助:老程序在新版本的matlab中运行
  16. SimpleFOC(三)—— AS5600角度读取
  17. 【翻译】对于Ext JS 5,你准备好了吗?
  18. linux防火墙开放所有端口命令,linux centos7 防火墙及端口开放相关命令
  19. unity 优化模型锯齿
  20. [js点击]JavaScript之Ajax技术之02

热门文章

  1. 联通iptv机顶盒中心服务器连接异常,联通iptv机顶盒连接安装 联通iptv机顶盒使用...
  2. EasyCVR接入Ehome协议设备PS流解析失败?一文分析PS流解析注意点
  3. MySql字符串拼接
  4. python爬虫qq付费音乐_Python 应用爬虫下载QQ音乐
  5. 用纯SQL插入image文件
  6. HTML5+CSS——个人在线简历
  7. 【前端面试题】02—59道CSS面试题(附答案)
  8. GitHub 优秀的 Android 开源项目第二篇——转自多篇网络文章
  9. 华为手机隐藏代码大全!一秒查出你的手机使用记录
  10. 学习笔记|Pytorch使用教程22(hook函数与CAM可视化)