DocuSign: Как мне динамически заменить заполнители в нашем исходном документе? - PullRequest
0 голосов
/ 06 ноября 2019

Мы пытаемся использовать API DocuSign для электронных подписей на таких предметах, как аренда и автоматические авторизации выставления счетов. У меня есть набор документов .rtf, предоставленных мне нашей юридической командой, и есть определенные разделы, которые необходимо динамически заменять. Я просмотрел документацию к DocuSign REST API и думаю, что мы должны использовать текстовые теги. Посуда с использованием PHP SDK . Я не настроил этот документ как шаблон, так как было бы здорово, если бы мы могли просто использовать локальный файл в файловой системе, а затем заполнители автоматически заменялись значениями, указанными в нашей полезной нагрузке.

То, что мы хотели бы сделать, - это иметь в наших документах поля (такие как TenantName и TenantAddress), которым мы можем присвоить значения, и сделать так, чтобы DocuSign динамически заменял эти заполнители на значения, которые мы указываем. Я пытался сделать это с помощью вкладок текста, но значения не заменяются. Вот пример кода:

$document = new Document([
    'document_base64' => $b64fc, // base64_encoded value of file_get_contents('path/to/document.pdf')
    'name' => 'Autobill Form',
    'file_extension' => 'pdf',
    'document_id' => '1',
]);

$tag1 = new Text();
$tag1->setTabLabel('TenantName');
$tag1->setValue('Joe Signer');
$tag1->setLocked(true);
$tag1->setDocumentId('1');
$tag1->setPageNumber('1');

$tag2 = new Text();
$tag2->setTabLabel('TenantAddress');
$tag2->setValue('123 Main St.');
$tag2->setLocked(true);
$tag2->setDocumentId('1');
$tag2->setPageNumber('1');

$tabs = new Tabs();
$tabs->setTextTabs([$tag1, $tag2]);

$document->setTabs($tabs);

// other code to set up recipients, envelopes, and get an embedded signing url

Когда я просматриваю документ, эти поля не заменяются и по-прежнему имеют значения заполнителей. Я не хочу использовать якоря, поскольку мне нужно удалить заполнитель и заменить его на DocuSign. Я также попытался установить текстовые вкладки для объекта Signer, но это также не сработало.

Что я делаю не так? Похоже, это будет довольно распространенный вариант использования API DocuSign, но я не смог понять это.

1 Ответ

0 голосов
/ 06 ноября 2019

Как заявляет Inbar, API-интерфейс DocuSign eSignature не позволяет изменять базовый документ. Вам потребуется внешний инструмент для подготовки документа перед передачей его в вызов API.

Тем не менее, одним из возможных вариантов будет наличие в вашем документе пробелов, которые выровнены по вкладкам текста. Если вы предварительно заполните эти теги и установите их только для чтения, теги заполнителей будут выгорать во время сеанса подписания. Интервал, выравнивание и шрифт, вероятно, не будут идеальными, но с некоторыми настройками вы можете сделать все в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...