无法使用编辑器和签名者作为嵌入式收件人创建信封 [英] Unable to create envelope with editor and signer as embedded recipients

查看:67
本文介绍了无法使用编辑器和签名者作为嵌入式收件人创建信封的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我将使用我的应用凭据来创建一个文档,该文档应由编辑者收件人编辑,并应由签名者收件人签​​名。尽管收件人编辑器具有docusign帐户,但失败并显示以下错误。

I will be using my app credentials to create a document which should be edited by a editor recipient and should be signed by a signer recipient. It is failing with the below error though the recipient editor has a docusign account.

 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);


推荐答案

节点SDK出现相同的错误。我认为这里的错误是有道理的。尽管错误消息应该有所不同。

I got the same error with node SDK. I think an error here makes sense. Although the error message should be different.

clientUserId 是为嵌入式收件人指定的,DocuSign不处理身份验证,因此接收者可能不会DocuSign用户-文档
编辑器类型的接收者则需要一个DocuSign帐户。因此,即使您能够发送 clientUserId 并获得嵌入的viewUrl作为响应,它也将带您进入DocuSign登录页面,随后是信封编辑器 http://prntscr.com/cyvg96

clientUserId is specified for embedded recipients where authentication is not handled by DocuSign and hence the receiver may not be a DocuSign user - Docs. Whereas an editor type recipient mandates a DocuSign account. Hence even if you were able to send clientUserId and get an embedded viewUrl in response, it would take you to DocuSign login page followed by envelope editor http://prntscr.com/cyvg96.

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

Or, I might be wrong and this is just a DocuSign bug. Just my thoughts.

这篇关于无法使用编辑器和签名者作为嵌入式收件人创建信封的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆