Search code examples
docusignapidocusigncompositetmplts

How do I include anchor tabs from both Inline and Composite Templates in an Envelope?


I want to include anchor tabs from both a server template and an inline template in a composite template document (a document uploaded at runtime). The server template contains a single recipient with the role of Signer1. The inline template contains a different recipient with the role of Signer2. Below is the full request xml. I can include the server template json if needed. I have read the following documentation: Send an Envelope from a Template, Dev Center Templates Doc, and Rules for CompositeTemplate Usage.

<envelopeDefinition>
  <status>sent</status>
  <emailSubject>Please sign this document</emailSubject>
  <emailBlurb></emailBlurb>
  <compositeTemplates>
    <compositeTemplate>
      <inlineTemplates>
        <inlineTemplate>
          <recipients>
            <agents />
            <carbonCopies />
            <certifiedDeliveries />
            <editors />
            <inPersonSigners />
            <intermediaries />
            <signers>
              <signer>
                <recipientId>1</recipientId>
                <name>My name</name>
                <email>My email address</email>
                <routingOrder></routingOrder>
                <roleName>Signer2</roleName>
                <tabs>
                  <approveTabs>
                    <approve>
                      <anchorString>A string in the runtime doc</anchorString>
                      <anchorUnits>Pixels</anchorUnits>
                      <anchorXOffset>0</anchorXOffset>
                      <anchorYOffset>0</anchorYOffset>
                    </approve>
                  </approveTabs>
                  <companyTabs />
                  <dateSignedTabs />
                  <declineTabs />
                  <emailAddressTabs />
                  <envelopeIdTabs />
                  <firstNameTabs />
                  <fullNameTabs />
                  <initialHereTabs>
                    <initialHere>
                      <anchorString>A string in the runtime doc</anchorString>
                      <anchorUnits>Pixels</anchorUnits>
                      <anchorXOffset>0</anchorXOffset>
                      <anchorYOffset>0</anchorYOffset>
                    </initialHere>
                  </initialHereTabs>
                  <lastNameTabs />
                  <signerAttachmentTabs />
                  <signHereTabs />
                  <titleTabs />
                </tabs>
              </signer>
            </signers>
          </recipients>
          <sequence>2</sequence>
        </inlineTemplate>
      </inlineTemplates>
      <document>
        <documentId>My runtime doc id</documentId>
        <name>My runtime doc name</name>
        <documentBase64>PDF bytes</documentBase64>
      </document>
      <serverTemplates>
        <serverTemplate>
          <sequence>1</sequence>
          <templateId>My server template id</templateId>
        </serverTemplate>
      </serverTemplates>
    </compositeTemplate>
  </compositeTemplates>
</envelopeDefinition>

I would expect that the recipient in the server template (Signer1) receives the envelope with the server template tabs included and the recipient in the inline template receives an envelope with the inline template tabs included.

The good news is that the recipient in the server template does receive an envelope with the tabs specified in the server template.

The problem is that the recipient in the inline template receives an envelope without any tabs. I can't figure out why the tabs in the inline template are being ignored. I have used an anchor string in the server and inline templates to specify the location in the composite template document to place the tabs.


Solution

  • You can add document in an envelope from either server template or Inline Template. If you are adding document from InlineTemplate then you should define the tabs using anchor string and all the tabs will be created using InlineTemplate only. You cannot mix two strategies, i.e adding few tabs from server templates and few tabs (using Anchor String) from Inline Templates. If you have same document in both server and inline template then create envelope using InlineTemplate and create recipient tabs using anchor string, I am not able to understand why you are mixing one recipient from Server and another from Inline Template.