4

我正在网站上实施 echosign api。

我已经从

https://github.com/craigballinger/echosign-api-php

我想为我的网站嵌入小部件。我已经实现了这个小部件。

现在在我的例子中,我们为每个订单动态生成文档。它是 PDF,根据计划可能是 3 到 6 页。

现在我想知道如何将签名占位符放在动态文档的特定位置。

在此之前,我使用的是 docusign,其中我必须指定 XY 坐标来指定文档上签名占位符的位置。

请帮忙。

4

3 回答 3

2

您无法使用 X、Y 坐标(如 DocuSign)以编程方式设置签名字段的位置。我遇到了同样的问题并通过电子邮件发送了 EchoSign,他们告诉我您必须使用文本标签作为字段名称。

文档:http ://secure.echosign.com/doc/TextFormsTutorial.pdf

例如,要将签名字段放入文档中,为该字段命名{{_es_:signer:signature}},EchoSign 会将其替换为签名字段。

值得注意的是,如果您不将这些内容放入文档中,EchoSign 会自动将签名字段附加到文档末尾。

于 2013-11-13T21:22:09.560 回答
0

您可以使用表单域图层模板,该模板是可应用于文档的预定义表单域位置。有关更多信息,请查看参数 formFieldLayerTemplates

https://secure.echosign.com/public/docs/EchoSignDocumentService17#DocumentCreationInfo

于 2014-03-25T17:24:24.110 回答
0

你好我也有同样的情况。我仍然无法使用 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);

所以我收到带有链接的电子邮件以签署文件....但我没有看到我的自定义字段!我总是看到文档末尾附加了默认符号字段。

我哪里错了?

于 2020-05-12T07:11:44.163 回答