通过文件发起合同
开始接入
准备工作
1、下载 SDK
2、下载 DEMO
您的第一个合同
1、打开根目录下的 config.py 修改第 18、19、22 行,设置 SecretId、SecretKey、UserId;
2、打开 byfile 目录下的 quick-start.py 修改 person_name、person_mobile,设置姓名和手机号为自己的信息;
3、在 byfile 目录下执行以下命令启动脚本:
$ python3 quick-start.py
此时,给自己发起的第一个合同已经成功,控制台输出:
您创建的合同id为:
yDRxxxxxxxxxx
签署链接(请在手机浏览器中打开)为:
https://res.ess.tencent.cn/xxxx
请访问以下地址下载您的合同:
https://file.test.ess.tencent.cn/file/xxx
您可以查收短信或直接到 DEMO 小程序登录进行签署。Demo 小程序码如下:
三步完成正式环境接入
第一步:配置接入信息
打开根目录下的 config.php 修改第 18、19、22 行,设置 SecretId 、 SecretKey、UserId 为您正式环境下的信息;
第二步:通过文件发起合同
打开 byfile 目录下的 quick-start.py,根据您的实际业务需求修改:
● $filePath:
发起文件所在的实际路径,可以使用类似于下面的方式声明路径:
filepath = "../testdata/test.pdf" # 相对路径
您也可以直接获取文件的 base64 内容,配置在 $fileBase64 变量中,而不使用本地文件!
● $flowName:
合同名称,根据您的实际业务场景来自行定义,名称为不超过 200 个字符的中英文均可;
● $approvers:
approvers 指定了合同的签署方信息、合同签署方的签署控件等内容;
✈ 快速学习:关于签署人信息、签署控件的拼接
参数配置完成后,即可:
在 byfile 目录下执行以下命令启动脚本,在正式环境一键发起合同!
python3 quick-start.py
第三步:下载合同文件
第二步调用发起合同得到的 FlowId,会自动传入 DescribeFileUrls 函数用于获取合同链接,在浏览器中访问控制台打印出的链接即可下载合同文件。
至此,恭喜,您已完成腾讯电子签集成版正式环境的全部接入工作,您可以继续:
- 将接入代码修改为接口并部署在服务端,提供给客户使用
- 继续探索更高级的特性
正式接入
准备工作
3、修改配置文件 设置 SecretId 、 SecretKey、UserId 为您正式环境下的信息
服务端正式环境接入
通过文件发起合同
服务端如果要集成文件发起合同功能,需要在接口(客户入参)、本地环境获取发起合同的相关参数,例如:
根据您的实际业务场景,封装通过文件发起合同函数(可以直接参考“第一个合同”中的代码);
例如:
def create_flow_by_files(operator_user_id, filepath,
flow_name, ...)
# 根据您的实际业务逻辑构造签署人
approvers = build_approvers();
...
# 发起合同
# 获取:FlowId:$resp['FlowId'];签署链接:$resp['SchemeUrl']
# 您的其他业务逻辑
...
签署回调
签署回调简介:
通过签署回调,您可以在合同状态产生变化接受到来自电子签的通知,通知包含合同、签署人的信息等内容。
如您需要开通此功能,需提供一个能接受 HTTP POST 请求的回调地址,请确保该地址提供的服务可公网访问并正常处理回调通知。
电子签推送的回调内容有进行加密处理,在接受到回调通知后需用配置好的 key 进行解密。
设置签署回调:
1、下载回调接收文件,于 ess-pyhon-kit/callback 目录中
2、在项目 callback 目录下执行 python callback_url_key.py 生成属于您的 key:
3、联系我们提供回调 URL 以及回调 key 进行配置(正式接入时)
签署回调用例:
在 callback/callback_server.py 中提供了解析回调内容的例子:
可将 callback/callback_server.py 中 149 行的 key 以及 157 行的 raw_data 分别替换为:
回调样例提供的测试用例;
随后在 callback 目录下执行:
python3 callback_server.py