You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用PHP调用DocuSign接口插入自定义字段的相关问题咨询

DocuSign字段填充失败解决方案

根因说明

你混淆了*信封自定义字段(Envelope Custom Field)和收件人文本标签(Recipient Text Tab)*两个独立的DocuSign属性:你在后台创建的Custom Field属于信封级全局字段,不是绑定到文档位置的填充标签,直接在信封根节点配置tabs自然无法匹配生效。

两种正确配置方案

方案1:填充已创建的信封自定义字段

如果你的自定义字段仅用于信封属性标记,不需要展示在文档内容里,直接在信封参数根节点新增customFields配置即可,示例代码:

$docu = Docusign::createEnvelope(array(
    'templateId'     => '373809c2-de64-43e1-8f41-a810dac4ab45', // 模板ID
    'emailSubject'   => 'Demo Envelope Subject', // 发送给所有收件人的邮件主题
    'status'         => 'created', // created表示草稿(设置为'sent'会直接发送信封!)
    // 新增信封自定义字段配置
    'customFields' => array(
        'textCustomFields' => array(
            array(
                'name' => 'username', // 与后台创建的自定义字段名称完全匹配,大小写敏感
                'value' => '123 Main St.',
                'show' => 'true' // 设为true则该字段会展示在信封详情页
            )
        )
    )
));

方案2:将字段值填充到文档指定位置

如果需要把值展示在文档的固定位置,你需要先调整模板配置和代码结构:

  1. 进入DocuSign模板编辑页,给对应收件人角色添加一个文本标签,将标签的「数据标签」属性设为username
  2. 使用模板时tabs必须绑定到templateRoles节点下,不能直接放在信封根参数,完整代码示例:
$docu = Docusign::createEnvelope(array(
    'templateId'     => '373809c2-de64-43e1-8f41-a810dac4ab45',
    'emailSubject'   => 'Demo Envelope Subject',
    'status'         => 'created',
    'templateRoles' => array(
        array(
            'email' => 'recipient@test.com', // 收件人邮箱
            'name' => '收件人名称',
            'roleName' => 'signer', // 与模板中设置的收件人角色名称完全匹配
            'tabs' => array(
                'textTabs' => array(
                    array(
                        'tabLabel' => 'username',
                        'value' => '123 Main St.'
                    )
                )
            )
        )
    )
));

注意事项

所有配置的名称、角色名、标签名均大小写敏感,需和后台配置完全一致,不可包含多余空格。

内容的提问来源于stack exchange,提问作者Nils Vennemann

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.28 08:36:04