我定义了两个模板,每个模板都有一个
primary.account.holder
角色,并且关联的 signHere
选项卡放置在每个模板的适当位置。如果我单独运行每个选项,即创建一个信封并添加我的收件人,那么选项卡就会按照我的预期放置。
第一个模板的文档有 11 页长,第 10 页有一个
signHere
选项卡。第二个模板的文档有 4 页长,最后一页上有一个 signHere
选项卡。
我想做的是创建一个包含这两个模板的信封,并且只有一个签名者。为此,我使用上面的两个模板构建了一个复合模板。
我遇到了以下问题:信封中的文档排序正确,但是选项卡全部出现在第一个文档上,而第二个文档根本没有任何选项卡。 (第一个文档在第 10 页上有一个“signHere”选项卡,因为它应该在第 10 页上,但它在第 4 页上也有一个选项卡,它应该在第二个文档中,但第二个文档没有选项卡。)
我提交的信封如下。
{
"compositeTemplates": [
{
"document": {
"documentBase64": "...",
"documentId": "81",
"fileExtension": "pdf",
"name": "file-one.pdf",
"order": "1"
},
"inlineTemplates": [
{
"recipients": {
"signers": [
{
"email": "[email protected]",
"name": "Doe, Jane",
"recipientId": "35916331",
"roleName": "primary.account.holder",
"routingOrder": "1"
}
]
},
"sequence": "2"
}
],
"serverTemplates": [
{
"sequence": "1",
"templateId": "0058ab16-22e7-4877-ace1-2022bf8566b8"
}
]
},
{
"document": {
"documentBase64": "...",
"documentId": "80",
"fileExtension": "pdf",
"name": "file-two.pdf",
"order": "2"
},
"inlineTemplates": [
{
"recipients": {
"signers": [
{
"email": "[email protected]",
"name": "Doe, Jane",
"recipientId": "35916331",
"roleName": "primary.account.holder",
"routingOrder": "1"
}
]
},
"sequence": "2"
}
],
"serverTemplates": [
{
"sequence": "1",
"templateId": "7b1282bf-051b-47b8-bd31-473c1423be4d"
}
]
}
],
"emailSubject": "Please sign this document set.",
"status": "sent"
}
我对两个内联模板使用相同的签名者和相同的
recipientId
recipientId
,但没有运气。我不清楚我做错了什么。我已经完成了一些复合模板文档,但我还没有看到任何与我的信封明显错误的内容。如何将选项卡放置在每个文档上而不仅仅是第一个文档上?
这个问题和我的问题类似。发布者找到的解决方案分为两部分:1) 内联模板需要在服务器模板之前排序,2) “您必须将帐户中的 Anchor Population Scope 值设置为“文档”。”
第 1 项本身没有任何作用。第 2 项很有趣——我还没做过。我将把我的解决方案部署到一个 DocuSign 帐户中,该帐户已经至少有一个正在生产中的 DocuSign 应用程序。 此设置是否会影响给定帐户的所有 DocuSign 应用程序? 如果是这样,那就很不幸了。
当帐户拥有多个文档签名应用程序时,我不相信我会被允许为整个帐户打开“锚定人口范围”标志。所以...
我不知道这是否是一个解决方案,但它似乎有效。我仍在使用复合模板,但我没有使用
serverTemplate
,并且我包含了带有签名者的静态定位选项卡。信封看起来像这样:
{
"compositeTemplates": [
{
"document": {
"documentBase64": "...",
"documentId": "1",
"fileExtension": "pdf",
"name": "file-one.pdf",
"order": "1",
"pages": "11"
},
"inlineTemplates": [
{
"recipients": {
"signers": [
{
"deliveryMethod": "email",
"email": "[email protected]"
"roleName": "primary.account.holder",
"tabs": {
"signHereTabs": [
{
"documentId": "1",
"pageNumber": "11",
"xPosition": "80",
"yPosition": "534"
}
]
}
}
]
},
"sequence": "1"
}
]
},
{
"document": {
"documentBase64": "...",
"documentId": "2",
"fileExtension": "pdf",
"name": "page-two.pdf",
"order": "2",
"pages": "4"
},
"inlineTemplates": [
{
"recipients": {
"signers": [
{
"deliveryMethod": "email",
"email": "[email protected]",
"tabs": {
"signHereTabs": [
{
"documentId": "2",
"pageNumber": "4",
"xPosition": "80",
"yPosition": "160"
}
]
}
}
]
},
"sequence": "1"
}
]
}
],
"emailBlurb": "Please sign this document set (smoke-test)",
"emailSubject": "Please sign this document set (smoke-test)",
"status": "sent"
}
这使我能够用多个表单撰写信封,其中许多表单具有相同的签名者,并且这些选项卡不会显示在信封中的第一个文档上。
我至少有 10-15 个表格,其中许多表格需要以单独模板中无法方便捕获的方式进行组合。
因此,我只需要在表单中为每个签名者关联一个选项卡集合,然后使用文档(在我的例子中生成)和一个包含每个签名者选项卡的内联模板创建一个复合模板。
静态定位而不是锚定位绕过了对“锚位置范围”标志的需求,代价是我需要自己跟踪选项卡数据而不是在模板中(这是不幸的。)
上面“更新 2”中描述的信封为我解决了这个问题。将“锚定人口范围”设置为文档而不是信封可能也会有效。但是,在我的情况下,鉴于帐户中存在应用程序,我不确定在帐户级别执行此操作是否会获得批准。
基本上,复合模板非常灵活,我可以利用它来解决我原来的问题。
请检查第二个documentId。 compositeTemplates 有效负载中使用的文档 ID 必须与服务器模板中使用的文档 ID 完全相同。你可以查看这个帖子