无法创建将编辑者和签名者作为嵌入式收件人的信封

2024-03-18

我将使用我的应用程序凭据创建一个文档,该文档应由编辑接收者编辑并由签名接收者签名。尽管收件人编辑者有文档签名帐户,但它失败并出现以下错误。

 com.docusign.esign.client.ApiException: {
  "errorCode": "EDITOR_MUST_HAVE_ACCOUNT",
  "message": "The recipient Editor must be an existing DocuSign account member."
}

下面是我的代码 -

EnvelopeDefinition envDef = new EnvelopeDefinition();
envDef.setEmailSubject(referral.getEmailSubject());


//Envelope events - Sent, Delivered, Completed, Declined, or Voided
//Recipient events - Sent, Delivered, Completed, Declined, AuthenticationFailed, and AutoResponded

envDef.setDocuments(getDocuments());


Tabs tabs = new Tabs();
tabs.setTextTabs(getTextTabs(referral));

EventNotification eventNotification = new EventNotification();
eventNotification.setLoggingEnabled("true");
eventNotification.setUrl("https://staging.agentdesks.com/v1.0/postbox/docusign/crs/event");

List<EnvelopeEvent> events = new ArrayList<>();
EnvelopeEvent event1 = new EnvelopeEvent();
event1.setEnvelopeEventStatusCode("completed");
events.add(event1);


EnvelopeEvent event2 = new EnvelopeEvent();
event2.setEnvelopeEventStatusCode("declined");
events.add(event2);

EnvelopeEvent event3 = new EnvelopeEvent();
event3.setEnvelopeEventStatusCode("voided");
events.add(event3);
eventNotification.setEnvelopeEvents(events);


envDef.setEventNotification(eventNotification);

Recipients recipients = new Recipients();
Editor editor = new Editor();
editor.setName(referral.getSender().getFirstname());
editor.setRecipientId(String.valueOf(referral.getSender().getIdFromMysql()));
editor.setEmail(referral.getSenderEmail());
editor.setClientUserId(String.valueOf(referral.getSender().getIdFromMysql()));
editor.setRoutingOrder("1");
editor.setRoleName("editor 1");
editor.setRequireIdLookup("false");
editor.setEmbeddedRecipientStartURL("www.google.com");

recipients.setEditors(new ArrayList<>(Arrays.asList(editor)));

Signer signer = new Signer();
signer.setName(referral.getReceiver().getFirstname());
signer.setEmail(referral.getReceiver().getEmail());
signer.setRecipientId(String.valueOf(referral.getReceiver().getIdFromMysql()));
signer.setTabs(tabs);
signer.setClientUserId(String.valueOf(referral.getReceiver().getIdFromMysql()));
signer.setRoutingOrder("2");
signer.setRoleName("signer 2");
recipients.setSigners(new ArrayList<>(Arrays.asList(signer)));

envDef.setRecipients(recipients);
envDef.setStatus("sent");


EnvelopeSummary envelopeSummary =
           docusign.envelopeApi.createEnvelope(docusign.getAccountId(), envDef);

我在使用 Node SDK 时遇到了同样的错误。我认为这里的错误是有道理的。尽管错误消息应该不同。

客户端用户ID为嵌入式收件人指定,其中身份验证不由 DocuSign 处理,因此收件人可能不是 DocuSign 用户 -Docs https://docs.docusign.com/esign/guide/usage/embedded_signing.html。 而editor类型收件人强制使用 DocuSign 帐户。因此,即使您能够发送客户端用户ID并获得嵌入的 viewUrl 作为响应,它将带您进入 DocuSign 登录页面,然后是信封编辑器http://prntscr.com/cyvg96 http://prntscr.com/cyvg96.

或者,我可能是错的,这只是一个 DocuSign 错误。只是我的想法。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

无法创建将编辑者和签名者作为嵌入式收件人的信封 的相关文章

随机推荐