Можем ли мы создать контракт и отправить его нескольким пользователям с помощью DocuSign API - PullRequest
1 голос
/ 08 мая 2020

Мы работаем над веб-приложением для онлайн-регистрации с использованием ядра asp. net. и мы хотим сделать это: -

  1. Мы загрузим контракт внутри DocuSign и укажем, что пользователи должны подписать контракт.
  2. внутри нашего приложения, если пользователь завершит регистрацию >>, чтобы сообщить DocuSign о необходимости отправки пользователю электронного письма для подписания контракта
  3. Мы хотим, чтобы один и тот же контракт внутри DocuSign отправлялся нескольким пользователям, и каждый пользователь подписывал свой собственный контракт.

Может ли кто-нибудь посоветовать, поддерживается ли это API DocuSign?

1 Ответ

3 голосов
/ 11 мая 2020

Конечно, есть несколько способов сделать это. Но суть в том, что вам нужна удаленная подпись, а не встроенная подпись. При удаленной подписи каждому получателю отправляется электронное письмо для завершения подписи конверта. Вот пример кода для C# ASP. NET Core:

Суть его такова:

// Create document objects, one per document
            Document doc1 = new Document();
            string b64 = Convert.ToBase64String(document1(signerEmail, signerName, ccEmail, ccName));
            doc1.DocumentBase64 = b64;
            doc1.Name = "Order acknowledgement"; // can be different from actual file name
            doc1.FileExtension = "html"; // Source data format. Signed docs are always pdf.
            doc1.DocumentId = "1"; // a label used to reference the doc
            Document doc2 = new Document {
                DocumentBase64 = doc2DocxBytes,
                Name = "Battle Plan", // can be different from actual file name
                FileExtension = "docx",
                DocumentId = "2"
            };
            Document doc3 = new Document
            {
                DocumentBase64 = doc3PdfBytes,
                Name = "Lorem Ipsum", // can be different from actual file name
                FileExtension = "pdf",
                DocumentId = "3"
            };
            // The order in the docs array determines the order in the envelope
            env.Documents =  new List<Document> { doc1, doc2, doc3};

            // create a signer recipient to sign the document, identified by name and email
            // We're setting the parameters via the object creation
            Signer signer1 = new Signer {
                Email = signerEmail,
                Name = signerName,
                RecipientId = "1",
                RoutingOrder = "1"
            };

            // routingOrder (lower means earlier) determines the order of deliveries
            // to the recipients. Parallel routing order is supported by using the
            // same integer as the order for two or more recipients.

Это 2 документа и обратите внимание на RoutingOrder, который используется, если вам нужно более одного получателя и вы хотите определить порядок, который они подписывают.

Я бы рекомендовал вам клонировать все репо , а затем посмотреть, как это работает, поскольку это ASP. NET Core приложение, которое вы можете запустить из VS прямо сейчас.

Надеюсь, это поможет, с удовольствием отвечу на дальнейшие вопросы.

...