Мы пытаемся использовать 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, но я не смог понять это.