Introduction
Nintex and DocuSign have teamed up to integrate DocuSign’s Digital Transaction Management with NINTEX workflows, which helps customers with electronic signature capabilities in their business process automation with effective security. With this combo documents can be easily sent for signature to the external users without knowing/exposing the SharePoint to the user without any access.
Objective
This article provides information about the integration of DocuSign in a NINTEX workflow. Nintex Connector for DocuSign provides the option to send a document for e-signature from SharePoint in a DocuSign envelope, retrieves the envelope status and downloads the document to SharePoint.
In this demo, I will create a simple workflow to demonstrate how DocuSign Workflow Actions can be used to
- Send a document for signature
- Capture Envelope ID
- Monitor Envelope Status
- Downloaded Signed document
- Capture comments if the document is rejected.
Approach
Let’s start with the pre-requisites before we get into the actual workflow development.
Pre-Requisites
- Enable NINTEX Live. Refer this link
- Enable prerequisite service
- This allows browsing the services from the NINTEX Live Catalog and adding them to the workflow Actions Toolbox.
- Allow Catalog browsing in the workflow designer
- This setting enables Connection Manager and Catalog browsing in the workflow designer so that you don’t have to use central administration to add workflow actions.
- Add DocuSign Nintex Live Actions
- Navigate to Nintex Workflow Management and click on Managed allowed actions
- Click on Catalog on the Ribbon.
- Search for the Keyword DocuSign which results in five actions, add all those and click on OK button.
- Once the Actions are added successfully Click on Ok
Same can be done from Workflow Designer as well. You will notice them in the ribbon since we enabled the “Allow Catalog browsing in the workflow designer”.
- Create DocuSign Account
- Create DocuSign Developer sandbox account by clicking on this link.
With this, we have all components required to develop the workflow.
Workflow development
- Firstly, we will create a Library and then create a workflow.
- Create a connection to the DocuSign using Connection Manager.
- Form the ribbon click on the connection manager
- Provide the configuration as shown below, enter your developer account credentials, and click on Save. Choose production/Demo based on your environment.
- Next step is to verify the connection, Click on Test.
- Next to the Test button you will notice a Dot “." (In my case for some reason image is not rendering). If you mouse over it you will see a message saying Connection is working.
- With this, connection to DocuSign has been established.
- Declare workflow Variable
Name | Type | Show on start form |
Recipient Email | Single line of text | Yes |
Recipient Name | Single line of text | Yes |
EnvelopeID | Single line of text | No |
Envelope Status | Single line of text | No |
Comments | Multiple lines of text | No |
For internal users you may choose people picker field instead of single line of text.
- Configure workflow Actions
Here is the overall workflow . I have split the workflow into three section which I will walk through in the following sections
Send document
First action in the workflow is Set Variable, this action is used to remove leading and trailing whitespace from the email address. DocuSign is not smart enough to ignore the spaces as a result workflow fails. So, ensure you remove the spaces before feeding it to the DocuSign action.
Configure the action as shown below.
DocuSign Send Document action sends a document for electronic signature and returns with an Envelope ID. Configuration of this action is really simple, follow the screen shot shown below. Nintex live actions are slow as compared to other actions, it might take 10 minutes to exit from this action.
Store the envelope ID in a list column or Log the envelope ID in the history so that you are aware of the envelope ID, in case workflow fails for any reason and you can reuse that envelope instead of resending the document with some additional logic. (Error handling for that is not covered in this article.)
Monitor Document
DocuSign Retrieve Envelope Status action retrieves the status of the envelope, default status is “In Process”. A few other envelope statuses are as below
- Draft - The envelope is in a draft state and has not been sent out for signing.
- In Process - The envelope has been sent and is waiting for one or more recipients to complete their actions.
- Completed - All recipients have completed the actions for the envelope.
- Declined - A signer has declined to sign/complete the envelope.
- Voided - The sender of the envelope has canceled an envelope or the envelope expired before the receiver took any action.
- Template - The envelope is a template.
You never know when the user will sign the document, so it is required to monitor the envelope status periodically. In order to do that we have to use Loop action. As I mentioned above default status is “In Process”, so configure the Loop condition to run until Envelope status is equal to “In Process”. Within the loop add Retrieve envelope status action, simply copy and paste above status control in the loop. Once the envelope status changes from “In process” to something else loop will exit.
However continuous loop will have huge performance impact which might cause workflow to dehydrate. To control this, include Pause action and configure it to delay the workflow for defined period. In dev you may choose 5 minutes for testing purpose. In production set delay period in hours.
Pause action is conditional with a Run if action So that there is no wait when the status is other than “In Process”. Set same condition as configured in the loop Envelope status is equal to “In Process”.
- Configure Loop and Run If action with the same condition as shown below
- Configure pause action as per your need.
Download document or Capture Reject comments
Now we know that Envelope status has changed but we are not sure if that document has been Completed or Declined. DocuSign Download document Action will fail if a Declined envelope ID is provided as an input. So we have to handle that externally using a condition action. Configure the condition as shown in the following screen shots.
In the Declined node, I’m sending an email to the workflow initiator with the reject comments captured from the Retrieve envelope status action.
In the Completed node, download the document to the library and send a notification to the workflow initiator. Output file is in PDF format so configure the URL in the download action with filename and .pdf as the extension.
With this we have completed the workflow development, you may check Enable workflow to start from item menu in the setting to show a link in the item context menu.
In Action
Upload a document to the library and select the workflow the item context menu.
Provide recipient email & name and start the workflow.
I received email to my Gmail, click on the link to insert the signature. For Demo account you will notice red text on top of every page.
Once the document is signed Recipient user will receive a copy of the signed document in the PDF format and same will be downloaded to the Sharepoint library too.
Conclusion
You learned how to send a document for e-signature from SharePoint using NINTEX and DocuSign Actions.
I hope you loved this article. Comment below if you have any questions.
Send Document | Monitor Document | Downlaod Document |
| | |