使用DocuSign复合模板时如何正确填充预填充文本标签?
解决DocuSign复合模板中预填充字段不生效的问题
核心修正方案
你当前把预填充字段放到了普通收件人的TextTabs里,但sender填充的预填充字段需要使用PrefillTabs,且要放在复合模板的正确层级中。以下是修正后的代码示例:
// 构建inline模板时配置预填充字段 var inlineTemplate = new InlineTemplate { Recipients = new Recipients { // 保留你的实际签署人配置 Signers = new List<Signer> { yourExistingSigner }, // 关键:将预填充字段放入PrefillTabs PrefillTabs = new PrefillTabs { TextTabs = new List<Text> { new Text { TabLabel = "LegalCompanyName", Value = "Test Customer LLC" } } } }, Sequence = 1 // 确保序列与对应服务器模板的序号匹配 };
针对你疑问的逐一解答
预填充标签在模板中的特殊配置
- 模板中的预填充标签需将
RecipientId设为空值(null或""),明确标记为sender可填充的全局字段,而非归属特定收件人; - 确认锚点字符串
PreFillLegalCompanyName_GUID在PDF中存在,且模板内锚点的匹配规则(大小写、全词匹配等)与文档内容完全契合。
- 模板中的预填充标签需将
特定的inline template或收件人上下文要求
- 预填充字段必须放在复合模板的
inlineTemplates层级的PrefillTabs中,不能嵌套在普通签署人的Tabs下; - 若复合模板包含多组模板序列,需保证预填充字段所在的inline template的
Sequence序号,与目标服务器模板的序号对应,确保覆盖生效。
- 预填充字段必须放在复合模板的
Anchor-based tabs的特殊表现
- 锚点型预填充字段赋值时,仅需精准匹配
TabLabel即可,无需指定坐标位置; - 需确认模板内的锚点标签未被设置为“仅收件人可编辑”,否则sender无法完成预填充操作。
- 锚点型预填充字段赋值时,仅需精准匹配
额外验证步骤
- 调用
GET /envelopes/{envelopeId}/tabs接口,查看信封创建后的标签数据,确认预填充值是否被正确提交; - 在模板编辑界面检查预填充字段的属性,确认已开启“Sender can edit”权限。
内容的提问来源于stack exchange,提问作者GS_tlayle
相关产品推荐
相关产品推荐

