DocuSign REST API(Node.js)多收件人签字字段不显示问题
DocuSign REST API(Node.js)后续收件人预定义字段不显示问题
我通过DocuSign REST API(Node.js)发送带预定义角色的信封,发送成功。第一个收件人(Candidato角色)签字时所有预定义字段正常显示,但第二、第三、第四个收件人(Testigo_1、Testigo_2、Coordinador角色)签字时,预先定义的字段完全不显示。
核心代码实现
const definicionsobre = new docusign.EnvelopeDefinition(); definicionsobre.templateId = Id_Plantilla; // Candidato角色字段配置 let arraytabscandidato = [ docusign.Text.constructFromObject({ tabLabel: "iniciales_candidato", value: arrayCR[4], }), docusign.Text.constructFromObject({ tabLabel: "domicilio_candidato", value: arrayCR[5], }), docusign.Text.constructFromObject({ tabLabel: "telefono_candidato", value: arrayCR[7], }), ]; let tabscandidato = docusign.Tabs.constructFromObject({textTabs: arraytabscandidato}); let candidatoRol = docusign.TemplateRole.constructFromObject({ recipientId: arrayCR[1], name: arrayCR[2], email: arrayCR[3], clientUserId: 1001, routingOrder: 1, tabs: tabscandidato, roleName: "Candidato", }); // Testigo_1角色字段配置 let arraytabstestigo1 = [ docusign.Text.constructFromObject({ tabLabel: "domicilio_t1", value: dataT1[3], }), docusign.Text.constructFromObject({ tabLabel: "relacion_t1", value: dataT1[4], }), docusign.Text.constructFromObject({ tabLabel: "telefono_t1", value: dataT1[5], }), ]; let tabstestigo1 = docusign.Tabs.constructFromObject({textTabs: arraytabstestigo1}); let testigo1Rol = docusign.TemplateRole.constructFromObject({ recipientId: dataT1[0], name: dataT1[1], email: dataT1[2], clientUserId: 1001, routingOrder: 2, tabs: tabstestigo1, roleName: "Testigo_1", }); // Testigo_2角色字段配置 let tabstestigo2 = docusign.Tabs.constructFromObject({ textTabs: [ docusign.Text.constructFromObject({ tabLabel: "domicilio_t2", value: dataT2[3], }), docusign.Text.constructFromObject({ tabLabel: "relacion_t2", value: dataT2[4], }), docusign.Text.constructFromObject({ tabLabel: "telefono_t2", value: dataT2[5], }), ], }); let testigo2Rol = docusign.TemplateRole.constructFromObject({ recipientId: dataT2[0], name: dataT2[1], email: dataT2[2], clientUserId: 1001, routingOrder: 3, tabs: tabstestigo2, roleName: "Testigo_2", }); // Coordinador角色配置(无字段) let coordinadorRol = docusign.TemplateRole.constructFromObject({ recipientId: arrayCoordi[0], name: arrayCoordi[1], email: arrayCoordi[2], clientUserId: 1001, routingOrder: 4, roleName: "Coordinador", }); definicionsobre.templateRoles = [ candidatoRol, testigo1Rol, testigo2Rol, coordinadorRol, ]; definicionsobre.status = "sent";
后续收件人看到的界面

信封返回的收件人信息
{ "agents": [], "carbonCopies": [], "certifiedDeliveries": [], "currentRoutingOrder": "1", "editors": [], "inPersonSigners": [], "intermediaries": [], "notaries": [], "recipientCount": "4", "seals": [], "signers": [ { "clientUserId": "1001", "completedCount": "0", "creationReason": "sender", "deliveryMethod": "email", "email": "x@x.com", "isBulkRecipient": "false", "name": "Wilfrido Rubén Ruiz Pérez", "note": "", "recipientId": "1", "recipientIdGuid": "dafceece-d81d-49f9-a4b4-34cc6a4371d9", "recipientType": "signer", "requireIdLookup": "false", "requireUploadSignature": "false", "roleName": "Candidato", "routingOrder": "1", "sentDateTime": "2023-05-30T18:24:02.8070000Z", "status": "sent", "userId": "38609301-ed16-42cf-b82c-dcb1915f7177" }, { "clientUserId": "1002", "completedCount": "0", "creationReason": "sender", "deliveryMethod": "email", "email": "x@x.com", "isBulkRecipient": "false", "name": "Yasser Martinez Herrera", "recipientId": "5", "recipientIdGuid": "ebfb8c03-48cd-468d-baab-914d894b8f38", "recipientSuppliesTabs": "true", "recipientType": "signer", "requireIdLookup": "false", "requireUploadSignature": "false", "roleName": "Testigo_1", "routingOrder": "2", "status": "created", "userId": "a2dafdc2-6a1d-42fe-a6ab-e0acd7e4fa57" }, { "clientUserId": "1003", "completedCount": "0", "creationReason": "sender", "deliveryMethod": "email", "email": "x@x.com", "isBulkRecipient": "false", "name": "Brayan López Hernández", "recipientId": "6", "recipientIdGuid": "58399fe7-9f9f-45f3-9724-5cac5ff385eb", "recipientSuppliesTabs": "true", "recipientType": "signer", "requireIdLookup": "false", "requireUploadSignature": "false", "roleName": "Testigo_2", "routingOrder": "3", "status": "created", "userId": "d1623117-fe47-4655-aeb3-1f910cd933d3" }, { "clientUserId": "1004", "completedCount": "0", "creationReason": "sender", "deliveryMethod": "email", "email": "x@x.com", "isBulkRecipient": "false", "name": "Adriana López Bernal", "recipientId": "7", "recipientIdGuid": "a0593aed-54fc-423d-a406-91323db9daca", "recipientSuppliesTabs": "true", "recipientType": "signer", "requireIdLookup": "false", "requireUploadSignature": "false", "roleName": "Coordinador", "routingOrder": "4", "status": "created", "userId": "7afca9a0-6958-4a8e-b9d8-0e4060b99eb0" } ], "witnesses": [] }
问题排查与解决方法
修正重复的clientUserId
代码中所有收件人都设置了clientUserId: 1001,但DocuSign要求每个收件人的clientUserId必须唯一。将Testigo_1设为1002,Testigo_2设为1003,Coordinador设为1004,与返回的JSON保持一致。验证模板字段的角色绑定
登录DocuSign后台,检查模板中Testigo_1、Testigo_2、Coordinador对应的字段,确保每个字段的"分配给"选项正确选择了对应的角色名称,无拼写或大小写错误。核对tabLabel与模板字段标签
确认代码中设置的tabLabel(如domicilio_t1、relacion_t2)与模板中对应角色的字段标签完全一致,包括大小写、特殊字符。补充Coordinador角色的Tabs配置
如果Coordinador角色在模板中有预定义字段,需要为其添加对应的tabs配置,否则字段不会显示。
内容的提问来源于stack exchange,提问作者Brayan Lopez
相关产品推荐
相关产品推荐

