Download the SignNow for Salesforce Quick Start Guide
What’s Included:
- Adding the signNow API Endpoint
- Creating a ‘Send with signNow’ Button
- Placing Your New Button on the Account View
- Adding the Document Status Canvas
- And more…
Learn how to set up and customize the signNow for Salesforce app.
Download the SignNow for Salesforce Quick Start Guide
What’s Included:
Need to get Salesforce quotes signed? Follow these instructions to learn how!
Here you can create the content that will be used within the module.
This guide is written under the assumption you have already successfully installed the signNow for Salesforce package in your Salesforce account, and have knowledge of the signNow components and how they work. If not, please follow the directions in the Quick Start Guide on this page: https://signnow2016.wpengine.com/integrations/salesforce/.
*UPDATE* Sending quotes for signature is now done with an extension package with the latest version of signNow for Salesforce. Please make sure you are running the latest version of the signNow package by checking the version on Salesforce AppExchange and comparing it with the version you have installed in your Salesforce account – https://appexchange.salesforce.com/listingDetail?listingId=a0N3000000B5E7FEAV. Updating to the latest package is easy, just click the Get It Now button and follow the instructions. If you already have signNow installed on your Quote objects, you will be prompted to download the Quotes Extenstion package when you try to send a quote. Follow the instructions and you will be quoting from Salesforce in no time!
Direct download link for signNow Quotes Extension package: https://na34.salesforce.com/packaging/installPackage.apexp?p0=04t15000000ouzM
If you have not yet set up your Quote object for sending documents for signature:
Edit the Quote object layout and drag the Canvas App snstatus into the object layout so you can view the status of documents sent from the Quote record.
Create a new button for sending quotes for signature and drag it into the Custom Buttons area of your Quote layout. The code to use is below:
window.location = '/apex/cudasign__cn_quotes?id={!Quote.Id}&type=quote';
Navigate to one of your oppportunities and click the “New Quote” button to create a new quote.
Type in a name and click save.
Click the Create PDF button and select “Standard Template”. This is the standard Salesforce quote template that comes preset with your Salesforce account.
*Note* At this time, automatic quote sending is designed to work with the Salesforce Standard Template only. Please do not edit the Standard Template as it may cause errors in the esignature sending flow.
Next, you will be presented with a PDF Preview. Note how the line items section will include whatever line items or products you have added to the quote, and the totals are automatically calculated.
Click the “Save to Quote” button.
Note how we now have one quote PDF created in the Quote record.
Click your Quote With signNow button to begin the quote sending process
Choose the quote PDF you’d like to send. If you have multiple PDFs on this record, you will be able to select which one you would like to send for signature. Click the “Send to signNow” button.
Rename the document if necessary, then click “Create”.
Add your signer’s email and adjust the sending settings (optional). You can also customize the email subject and body if you’d like. Click the send button at the bottom when you are ready to send the document for signature.
Congratulations! You have just sent a quote for signature with signNow.
Go back to your Salesforce record and view the Quote status.
Your signer will recieve an invite to his or her email. Opening the invite will prompt the user to sign the document.
This quoting process makes use of signNow’s “Magic Field” technology, which scans the text on the document for certain triggers that tell signNow where to place a field and what kind of field it should be. The Salesforce standard quote template is one example of how this technology helps signNow and our customers optimize their document workflows!
The signNow for Salesforce app enables you to pull information from Salesforce (like Name, Title, etc) and have insert it into templates automatically, where you’ve indicated.
These annotations are added in your signNow account, by editing the appropriate template. Click on “More” next to the template you’d like to use then click on “Salesforce Annotations.”
For standard Salesforce objects and fields (i.e. you haven’t created them yourself) the format will be as shown below.
The proper format is “objectname.fieldname”. So to get the Name field from a Contact object, you would enter contact.name.
For CUSTOM Salesforce objects and fields (i.e. you HAVE created them yourself) the format will be as shown below.
The proper format is “customobjectname__c.customfieldname__c”. So to get a field called Subscription from an object called Customer, you would enter customer__c.subscription__c (that’s two underscores before the letter “c”).
In order to make sure that you’re using the correct ID for objects and fields, you can use the Salesforce Developer Console to confirm that. Click on your name at the top, then select Developer Console. A window will pop up. Click File — Open.
Under “Entity Type” click on Objects then on the right find the name of the specific object. Double click that object name to proceed. In this case, you see that “account” is what you would use in your Salesforce Annotations for the Account object.
Once your object details appears, you can sort the fields by Name to make it easier to find what you need. In this case, we’re looking at (1) the Account object, then the (2) Billing State field, which you can see below. Once you’ve selected “BillingState” click on (3) Query to verify the correct ID for that field. Here we see that it’s (4) BillingState. So the Salesforce annotation would be “account.billingstate” (you can use all lowercase).
NOTE: If you do not see the desired field listed here, that means Salesforce has not made it accessibleand we are therefore unable to import the data into the signNow template.
*FINAL NOTES*
It’s important to understand that Salesforce Annotations are object specific. If your annotation says “account.name” and you try to use that template to pull data from an Opportunity object, IT WILL NOT WORK. Your template must only pull data from one object type, and you must always match up the correct template to the object you are sending from.
Template Settings takes your workflow customization to the next level.
This guide is written under the assumption you have the signNow for Salesforce integration up and running already and have working knowledge of Salesforce and the signNow integration components.
As a general best practice, when editing your signNow integration, we recommend downloading the latest version of the package from the Salesforce AppExchange here https://appexchange.salesforce.com/listingDetail?listingId=a0N3000000B5E7FEAV. If you are up to date on your signNow package, you may proceed with setting up your Template Settings.
Click the “+” on the top menu bar to view all your Salesforce objects.
Find the Template Settings object and click it.
Click the “New” button to create a new Template Setting.
Now its time to add the details of this specific Template Setting.
Give your template settings a name.
Type in a custom email subject, body, TemplateSetting name, and document name. Leave the trigger field blank. You can use data from the fields on your object, like how you see {Contact.Name} and {Contact.Email} in the following code and screenshot, which will be replaced with the appropriate data from the Salesforce record.
The code for your roles will be in JSON format. If you are not a coder, don’t worry! Once you know what you’re looking at it’s easy to understand. Here is the code in the following screenshot:
[
{
"order": "1",
"name": "FIN",
"email": "{Contact.Email}",
"allow_forwarding": "yes"
},
{
"order": "2",
"name": "MSP",
"email": "m2@mailinator.com",
"allow_forwarding": "no"
}
]
So how does this JSON code work? There are four required attributes which cover the customizable aspects of your template. Copy the format in the code snip above and modify it to your needs. You can adjust the number of roles as needed and change any of the attributes based on the table below:
SAVE YOUR NEW TEMPLATE SETTINGS!
Next, copy the record ID from your new Template Setting Object URL and save it for later.
In this example we made our Template Settings for the Contact object, so we will add a button to the Contact Object.
Use the following code, and be sure to place your Template Settings record ID in the correct location:
window.location = '/apex/cuda_signnow__sn_global_attachment?id={!Opportunity.Id}&type=attachment&TemplateSettingsId=TEMPLATESETTINGSIDGOESHERE';
Remember to select “Detail Page Button” for Display Type, “Execute Javascript” for the Behavior, and “OnClick Javascript” for the Content Source.
Save your new button!
Next, drag the new button into your object layout and save it.
The text tags on this document must match the roles you created with the JSON code in the Template Settings. For more information on text tags, please visit: https://techlib.barracuda.com/cudasign/generatetexttags/
Here are what text tags for this example looks like:
Click “Attach File” and follow the instructions to upload the document.
Click your new Template Settings button (labeled “Intronis Template” in the screenshot) to start the sending process.
Next you will be presented with all the attachments you have added to this Salesforce record. Be sure to select the correct attachment that has text tags that match your template settings.
Review and/or modify template settings, then click the send button.
View the document status from the Salesforce record.
You can create as many individual template settings as you want. For each different template setting you will need to create a new custom button by using the standard template setting button code and replacing the correct template setting ID. Always make sure the attachment you are sending has text tags with roles that match the roles specified in your template setting or else the process WILL NOT WORK.
A new feature in Template Settings is the ability to set a Master Object. This will allow you to merge data from objects connected to the object you are sending from. Currently this works for the Opportunity object only. Implementing the Master Object in your template settings will allow you to send a document from an Opportunity and merge data from the connected Account and Contact objects.
Click “Setup” in the upper right hand corner.
Navigate to: Build > Create > Objects – in the left side menu.
Find the object titled “TemplateSetting” Click on it (not the edit button).
You should now be looking at the TemplateSetting Object.
Find “Master Object” in the “Custom Fields & Relationships” section of the page and click on it.
You should now be looking at the Master Object.
Click the “View Field Accessibility” button.
You should now be looking at the Field Accessibility screen for TemplateSetting. You should see “Hidden” as the Field Access value for most if not all of your profiles. Start with the first row and click “Hidden”.
You will now see the Access Settings for the Master Object field. In the Page Layout section, check the “Visible” box, then click “Save”.
You will be taken back to the Field Accessibility screen. In my case field access for every profile has automatically changed to “Editable”. This is not always the case. If you have some profiles that still show “Hidden”, we recommend clicking on them and checking the “Visible” box like you did for the first row.
Click the “+” on the top menu bar to access all your objects.
Next, click on TemplateSettings
If you have multiple TemplateSettings you will be presented with all of them. Click to open the one you would like to use the Master Object with.
Click the “Edit” button.
Now, type “Opportunity” into the Master Object field and click save.
In order for the Master Object to pull data from connected objects, you must set a Primary Contact on your Opportunity.
To do this, open your opportunity. Hover over “Contact Roles” and click the “New” button to add a contact role if you do not already have one on this opportunity.
If you already have a contact role on the opportunity, please make sure you check the box to left of the contact’s name to make him or her the Primary Contact. Save any edits!
Any time you use this specific TemplateSetting to send a document for signature (and you must send from an Opportunity, as that is the Master Object), you will be able to pull data from the connected Account and Contact. Take a look at the TemplateSetting screenshot above, and you will see the body and document name reference fields from the Account and Contact object. You can even use a tag like {Contact.Email} in the Roles JSON code, and it will automatically send the invite to the Contact’s email.