我正在一个网站上实现echosign api。
我已经从下载了php脚本
https://github.com/craigballinger/echosign-api-php
我想为我的网站嵌入小工具。我已经实现了这个小部件。
现在,在我的案例中,我们为每个订单动态生成文档。它是PDF,根据计划可能从3到6页。
现在我想知道如何将签名占位符放在动态文档的特定位置。
在此之前,我使用了docusign,其中我必须指定X Y坐标来指定文档上签名占位符的位置。
请帮忙。
不能像DocuSign那样使用X、Y坐标以编程方式设置签名字段的位置。我遇到了同样的问题,并给EchoSign发了电子邮件,他们告诉我,字段名称必须使用文本标签。
文件编制:http://secure.echosign.com/doc/TextFormsTutorial.pdf
因此,例如,要将签名字段放入文档中,请将字段命名为{{_es_:signer:signature}}
,EchoSign将用签名字段替换它。
值得注意的是,如果您不将这些内容放入文档中,EchoSign将自动在文档末尾附加一个签名字段。
您可以使用表单字段层模板,该模板是可以应用于文档的预定义表单字段位置。有关更多信息,请查看参数formFieldLayerTemplates
https://secure.echosign.com/public/docs/EchoSignDocumentService17#DocumentCreationInfo
嗨,我也有同样的情况。我仍然无法使用API添加自定义字段。
这是我的代码:
$fields_array = array(
"fileInfos" => array([
"transientDocumentId" => $transientDocumentId
]),
"name" => "PDF testing",
"participantSetsInfo" => array([
"memberInfos" => array([
"email" => "myemail@test.com"
]),
"order" => 1,
"role" => "SIGNER"
]),
"mergeFieldInfo" => array([
"defaultValue" => "Test",
"fieldName" => "sigBlock2"
]),
"signatureType" => "ESIGN",
"state" => "DRAFT" //<-- if I use AUTHORING i can't assign custom fields
);
$postdata = json_encode($fields_array);
$resource = curl_init();
curl_setopt_array($resource, array(
CURLOPT_URL => "https://api.eu1.echosign.com/api/rest/v6/agreements",
CURLOPT_HTTPHEADER => $header, //<---contain token etc....
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $postdata,
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_SSL_VERIFYPEER => false
));
$res = curl_exec($resource);
$result = json_decode($res,true);
$id = $result['id'];
然后设置自定义字段:
$fields_array = array(
"fields" => [array(
"locations" => [array(
"height" => 36,
"left" => 75,
"pageNumber" => 2,
"top" => 200,
"width" => 150
)],
"contentType" => "DATA",
"name" => "sigBlock1",
"backgroundColor" => "#CCCCCC",
"inputType" => "TEXT_FIELD",
"required" => true,
"visible" => true
)]
);
$postdata = json_encode($fields_array);
$resource = curl_init();
curl_setopt_array($resource, array(
CURLOPT_URL => "https://api.eu1.echosign.com/api/rest/v6/agreements/" . $id . "/formFields",
CURLOPT_HTTPHEADER => $header,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => $postdata,
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_SSL_VERIFYPEER => false
));
$res = curl_exec($resource);
然后将状态更改为IN_PROGRESS以发送电子邮件:
$fields_array = array(
"state" => "IN_PROCESS"
);
$postdata = json_encode($fields_array);
$resource = curl_init();
curl_setopt_array($resource, array(
CURLOPT_URL => "https://api.eu1.echosign.com/api/rest/v6/agreements/" . $id . "/state",
CURLOPT_HTTPHEADER => $header,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => $postdata,
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_SSL_VERIFYPEER => false
));
$res = curl_exec($resource);
所以我收到了一封带有签名链接的电子邮件。。。。但是我看不到我的自定义字段!我总是看到默认的符号字段附加在文档的末尾。
我错在哪里了?