Skip to main content

Hi,

I am getting below error “ANCHOR_TAB_STRING_NOT_FOUND” (The specified Anchor Tab string was not found in the document. Anchor Tab String "\SignHere58105\" not found. Anchor Tab String "\SignHere58110\" not found.) Although I can see these strings on the document.

 

 

@Dileep 

If you can see the strings on the document, but it is not found by Docusign eSignature, the strings are most likely not machine readable and are not detected by OCR. Which format is the uploaded document? Did you convert it before uploading? This step may have resulted in the anchor string not being recognised. If possible, please try to upload the Word document before conversion and see if that works in your case.


Hello @mrave,

Yes it seems not readable. We are initially generating the document content as HTML along with Anchor embedded in it. We are then converting the HTML content to PDF using an external library html2pdf (in JavaScript) and passing the base64 of pdf file to Docusign. Any insights on how to handle this use case?

 


@Dileep

Is there a specific reason why you convert the document into a PDF before uploading it to Docusign eSignature? Have you tried uploading the HTML and were not satisfied with the resulting PDF converted automatically by Docusign? If you have not tried that, I suggest to do so, which may resolve this conversion issue, which may be caused by the html2pdf library.


Hello @mrave,

 

Thank you for the suggestion and for the quick response. Would you be able to please share a sample code on how we can pass the HTML content instead of the pdf converted base64? We are currently creating the envelope via API using compositeTemplate and inlineTemplate to generate the payload.

Our current code looke like below:

$shareholders = json_decode($_POSTT'data'], true);

        $base64PdfData = $_POST_'docBase64'];

        $application = $_POST 'application'];

        $htmlDocContent = $_POSTt'htmlDocContent'];

        $numPages = 1;

        $countDocument = 1;

        $signers = p];

        $i = 0;

        $emails = ="dileep.mudadla@dwtc.com", "vaishakj17@gmail.com"];

        foreach ($shareholders as $shareholder) {

            if ($i % 2 == 0) {

                $signers ] = $this->getSigner($htmlDocContent, $base64PdfData, $emails;0], $shareholdero'name'], $shareholdera'contact_id'], "\\SignHere" . $shareholderr'contact_id'] . "\\");

            } else {

                $signers] = $this->getSigner($htmlDocContent, $base64PdfData, $emails[1], $shareholdert'name'], $shareholdert'contact_id'], "\\SignHere" . $shareholder['contact_id'] . "\\");

            }

            $i++;

        }

 

        $inlineTemplate] =

            "recipients" => /

                "signers" => $signers

            ],

            "sequence" => $countDocument

        ];

 

        $document =

            "documentId" => $countDocument,

            "name" => "Memorandum",

            "fileExtension" => "pdf",

            "documentBase64" => $base64PdfData

        ];

        $compositeTemplate] = "

            "document" => $document,

            "inlineTemplates" => $inlineTemplate

        ];

 

        $envelopeDefinition =

            "status" => "sent",

            "emailSubject" => "Document for your approval",

            "compositeTemplates" => $compositeTemplate

        ];

 

 

Looking forward to your help on this. Many thanks in advance


@Dileep 

You need to change the fileExtension to “html” and the documentBase64 to not the $base64PdfData, but the $base64HtmlData, so skip the conversion to PDF and base64 the HTML data. That should be all required.

Before

"fileExtension" => "pdf",

"documentBase64" => $base64PdfData

After

"fileExtension" => "html",

"documentBase64" => $base64HtmlData

 


Hi @mrave,

I believer we are getting close. When changed to html, we can now see the signature control anchored at the desired location. However, the content on the document is not rendered as HTML but instead it is stamping the content as is along with HTML tags. Could you please help how we can overcome this issue?

 


@mrave . FYI, the HTML content before encoding to base64 looks as below:

 

<div id="title" style="text-align: center">
            <div>
                <span style="font-size:30px;font-weight: bold;">Memorandum &amp; Articles of Association</span>
            </div>
            <div style="margin-top: 40px;padding-bottom:10px">
                <span style="font-size:22px;font-weight: bold;">null</span>
            </div>
            <div style="margin-top:20px">
                <span style="font-weight: bold;font-size: 18px">A Free Zone Establishment with Limited Liability</span>
            </div>
        </div>
        <br>
        <div id="firstSection">
                            <p>This Memorandum and Articles of Association (the <span style="font-weight: bold">"Memorandum"</span>) is
                    entered into this
                    <span><strong>13/05/2024-</strong></span> (the
                    <span style="font-weight: bold">"Effective Date"</span>) at Dubai World Trade Centre Authority (the
                    <span style="font-weight: bold">"DWTCA"</span>),
                    Dubai- United Arab Emirates for:
                </p>
                        <p><strong>1)</strong><span style="font-weight:bold"> Ms. Mrudula Kiran Gorripati</span>, National of <span style="font-weight:bold">India, </span>Holder of Passport No. <span style="font-weight:bold">undefined</span>. Referred to hereunder as the "Owner Party"</p><p><strong>2)</strong><span style="font-weight:bold"> Mr. Dileep Kumar Mudadla</span>, National of <span style="font-weight:bold">India, </span>Holder of Passport No. <span style="font-weight:bold">undefined</span>. Referred to hereunder as the "Owner Party"</p><p><strong>3)</strong><span style="font-weight:bold"> Mr. Meeran Shafi Maitheen</span>, National of <span style="font-weight:bold">India, </span>Holder of Passport No. <span style="font-weight:bold">R7245950</span>. Referred to hereunder as the "Owner Party"</p>
        </div>
        <div id="secondSection">
            <div id="subtitle" style="text-align: center;margin-top:50px">
                <span style="text-align: center; left: 0;right: 0;margin: auto;max-width: 100%;overflow: auto;font-weight: bold;font-size:22px">PREAMBLE</span>
            </div>
            <br>
            <div>
                                    <p>Where-as the Owner has full legal capacity to enter into this Memorandum, has agreed to establish a
                        limited liability Free Zone Establishment (hereinafter the <span style="font-weight: bold">"Establishment"</span>) in the
                        Dubai World Trade
                        Centre Free Zone, Dubai, United Arab Emirates to be governed by the terms of this Memorandum and the
                        Implementation Procedures of the Free Zone Companies as amended from time to time (hereinafter
                        referred to as the <span style="font-weight: bold">"Procedures")</span></p>
                
            </div>
        </div>
        <div id="thirdSection">
            <div id="subtitle" style="text-align: center;margin-top:50px">
                            <span class="page-break" style="text-align: center; left: 0;right: 0;margin: auto;max-width: 100%;overflow: auto;font-weight: bold;font-size:22px">ARTICLE
                (1) INTEGRAL PART</span>
        </div>
        <br>
        <p>The above mentioned Preamble shall be an integral part of this Memorandum, read and construed herewith at
            all circumstances and times.</p>
        </div>
    <div id="fourthSection" class="page-break">
        <div id="subtitle" style="text-align: center;margin-top:50px">
                    <span class="page-break" style="text-align: center; left: 0;right: 0;margin: auto;max-width: 100%;overflow: auto;font-weight: bold;font-size:22px">
            ARTICLE (2) FORMATION</span>
    </div>
    <br>
    <p>The Establishment shall be formed in accordance with the provisions of the Procedures issued by DWTCA as
        amended from time to time.</p>
</div>
<div id="fifthSection" class="page-break">
    <div id="subtitle" style="text-align: center;margin-top:50px">
            <span class="page-break" style=" font-weight: bold;font-size:22px;text-align: center; left: 0;right: 0;margin: auto;max-width: 70%;overflow: auto;">
        ARTICLE (3) NAME OF THE ESTABLISHMENT</span>
</div>
<br>
<p>The name of the Establishment is: <span style="font-weight: bold">null</span> A Free Zone Establishment with Limited Liability</p>
</div>
<div id="sixthSection" class="page-break">
    <div id="subtitle" style="text-align: center;margin-top:50px">
            <span class="page-break" style="font-weight: bold;font-size:22px;text-align: center; left: 0;right: 0;margin: auto;max-width: 70%;overflow: auto;">
        ARTICLE (4) HEAD OFFICE</span>
</div>
<br>
<p>The Head Office shall be located in the DWTCA in the Emirate of Dubai. The Establishment shall be
    entitled to open and operate branches elsewhere subject to the approval of the DWTCA.</p>
</div>
<div id="seventhSection" class="page-break">
            <div id="subtitle" style="text-align: center;margin-top:50px; ">
            <span class="page-break" style="font-weight: bold;font-size:22px;text-align: center; left: 0;right: 0;margin: auto;max-width: 70%;overflow: auto;">
                ARTICLE (5) OBJECTIVES</span>
        </div>
        <br>
        <p><strong>5.1</strong> The objects of the company shall be:
            The objects of the company shall be: As per DWTCA valid license(s) and all other accessories and activities as are incidental and related or necessary to the aforesaid business as may be approved by (the Authority)</p>
        <p><strong>5.2</strong> The Establishment shall carry on all such business as the DWTCA may permit under
            terms of the license
            to be issued to it by DWTCA (the License). For this purpose, the License shall be an integral part of
            this Memorandum &amp; Article of Association</p>
        <p><strong>5.3</strong> In addition to the objectives set out in Article 5.1 above, the Establishment shall
            have the
            following powers:</p>
        <p><strong>5.3.1</strong> Interest or participate in any way with other companies practicing similar
            business or may assist
            in achieving its objectives within or outside of DWTCA and may possess or subsidize such companies.
            However, such objectives may be construed at their widest meaning without restrictions and the
            Establishment may alter or extend such objectives by the Owner.</p>
        <p><strong>5.3.2</strong> Enter into commercial transactions, execute contracts, borrow money and deal with
            such investments
            and to promote, participate in, take over and manage other enterprises and operations of all kinds.</p>
        <p><strong>5.4</strong> The Establishment shall not carry on the business of insurance or banking nor invest
            monies for the
            account of any third party prior to a trade license specifically issued for such purpose enumerating
            clear written approval of the competent authorities including DWTCA.</p>
    </div>
<div id="eighthSection" class="page-break">
            <div id="subtitle" style="text-align: center;margin-top:50px">
            <span class="page-break" style="font-weight: bold;font-size:22px;text-align: center; left: 0;right: 0;margin: auto;max-width: 70%;overflow: auto;">
                ARTICLE (6) THE CAPITAL</span>
        </div>
        <br>
        <p><strong>6.1</strong> The capital of the Establishment shall be AED
            <span><strong>300000</strong></span>.
        </p>
        <p><strong>6.2</strong> The Capital of the Establishment is made up one class of shares
            <strong>Unpaid Up Capital</strong> as under. The share shall be
            represented of equal denomination.
        </p>
        <br>
        <div>
            <table style="border-collapse:collapse;font-size:9px;width: 100%;"><thead><tr><th style="border: 1px solid black;">Shareholder’s Name</th><th style="border: 1px solid black;">No. of Shares</th><th style="border: 1px solid black;">Value Per Share (AED)</th><th style="border: 1px solid black;">Total Value (AED)</th></tr></thead><tbody><tr><td style="border: 1px solid black;">Ms. Mrudula Kiran Gorripati</td><td style="border: 1px solid black;">120</td><td style="border: 1px solid black;">1,000</td><td style="border: 1px solid black;">120000.00</td></tr><tr><td style="border: 1px solid black;">Mr. Dileep Kumar Mudadla</td><td style="border: 1px solid black;">90</td><td style="border: 1px solid black;">1,000</td><td style="border: 1px solid black;">90000.00</td></tr><tr><td style="border: 1px solid black;">Mr. Meeran Shafi Maitheen</td><td style="border: 1px solid black;">90</td><td style="border: 1px solid black;">1,000</td><td style="border: 1px solid black;">90000.00</td></tr></tbody></table>
        </div>
        <br>
        <p><span style="font-weight: bold">6.3</span> Free Zone Establishment share can only be held by one
            shareholder or entity. The
            Establishment shall
            keep a register in which details such as number, amount and owner information of all shares issued on it
            shall be entered. No shares shall be issued in bearer form.</p>
        <p><span style="font-weight: bold">6.4</span> Free Zone Establishment may own all of the shares in any other
            Free Zone
            Establishment or shares in
            any company or other establishment subject to compliance with all applicable laws.</p>
        <p><span style="font-weight: bold">6.5</span> Any purported transfer of any share or shares in any Free Zone
            Establishment shall
            be invalid unless
            a duly executed instrument of transfer has been delivered to the Free Zone Establishment's secretary and
            details are registered in the FZE Register. Any share transfer shall be effective as from the date of
            registration thereof in the FZE Register.</p>
        <p><span style="font-weight: bold">6.6</span> The shares of the Establishment can be transferred by the
            owner and with a prior
            written approval of DWTCA. </p>
    </div>
<div id="ninthSection" class="page-break">
            <div id="subtitle" style="text-align: center;margin-top:50px; ">
            <span class="page-break" style="font-weight: bold;font-size:22px;text-align: center; left: 0;right: 0;margin: auto;max-width: 70%;overflow: auto;">
                ARTICLE (7) Liability Clause</span>
        </div>
        <br>
        <p>The nature of the Establishment is a Free Zone Establishment and the liability of the owner is limited to
            the extent of Capital held.</p>
    </div>
<div id="tenthSection" class="page-break">
            <div id="subtitle" style="text-align: center;margin-top:50px">
            <span class="page-break" style="font-weight: bold;font-size:22px;text-align: center; left: 0;right: 0;margin: auto;max-width: 70%;overflow: auto;">
                ARTICLE (8) FISCAL YEAR</span>
        </div>
        <br>
        <p>The first financial year shall commence in <span><strong class="fiscal-start">May, 2024</strong></span> pursuant to the
            registration of the Free
            Zone Establishment / Company and will end in <span><strong class="fiscal-end">April, 2025</strong></span>. The successive
            financial years shall
            be of 12 months duration ending in <span><strong class="fiscal-end-month">April</strong></span> every year.</p>
    </div>
<div id="eleventhSection" class="page-break">
            <div id="subtitle" style="text-align: center;margin-top:50px">
            <span class="page-break" style="font-weight: bold;font-size:22px;text-align: center; left: 0;right: 0;margin: auto;max-width: 70%;overflow: auto;">
                ARTICLE (9) ACCOUNTS</span>
        </div>
        <br>
        <p><span style="font-weight: bold">9.1</span> Regular books of accounts shall be kept under the control and
            supervision of the
            Manager.</p>
        <p><span style="font-weight: bold">9.2</span> The Owner shall appoint an Auditor to audit the accounts as
            per the rules of
            accounts.</p>
    </div>
<div id="twelfthSection" class="page-break">
            <div id="subtitle" style="text-align: center;margin-top:50px">
            <span class="page-break" style="font-weight: bold;font-size:22px;text-align: center; left: 0;right: 0;margin: auto;max-width: 70%;overflow: auto;">
                ARTICLE (10) RESPONSIBILITY</span>
        </div>
        <br>
        <p>The Liability of the Establishment to the debts of the company shall be limited to the amount unpaid of
            their respective shares if any.</p>
    
</div>
<div id="thirteenthSection" class="page-break">
            <div id="subtitle" style="text-align: center;margin-top:50px">
            <span class="page-break" style="font-weight: bold;font-size:22px;text-align: center; left: 0;right: 0;margin: auto;max-width: 70%;overflow: auto;">
                ARTICLE (11) AMENDMENTS</span>
        </div>
        <br>
        <p>The Establishment may amend its Memorandum of Association and Articles of Association by the Owner with a
            prior written approval from DWTCA.</p>
    </div>
<div id="fourteenthSection">
            <!-- Manager Roles -->
        <div id="subtitle" style="text-align: center;margin-top:50px">
            <span class="page-break" style="font-weight: bold;font-size:22px;text-align: center; left: 0;right: 0;margin: auto;max-width: 70%;overflow: auto;">
                MANAGER ROLES</span>
        </div>
        <br>
        <p class="page-break"><span style="font-weight: bold">1. </span>To represent the company before the government departments including the Department of Economic Development, Municipalities, Etisalat Du, DWA, Land Department, Chamber of Commerce and Industry, Ministry of Human and Emiratization.</p><p class="page-break"><span style="font-weight: bold">2. </span>To appoint and remove lawyers and to file or defend any suits before all UAE courts at all levels</p>
        <!-- Manager Roles -->
        <div id="subtitle" style="text-align: center;margin-top:50px; ">
            <span class="page-break" style="font-weight: bold;font-size:22px;text-align: center; left: 0;right: 0;margin: auto;max-width: 70%;overflow: auto;">
                ARTICLE (12) CORRESPONDENCE</span>
        </div>
        <br>
        <p class="page-break">Unless otherwise stated by a written notice, all correspondence to the Owner shall be made to his address
            of the Establishment book.</p>
        <br>
        <div class="page-break"><p class="page-break" style="margin-top:20px"><span style="color: transparent"> \SignHere58097\ </span></p><p class="page-break" style="margin-top:20px">Signature: </p><p class="page-break"><strong>Ms. Mrudula Kiran Gorripati </strong></p></div><div class="page-break"><p class="page-break" style="margin-top:20px"><span style="color: transparent"> \SignHere58106\ </span></p><p class="page-break" style="margin-top:20px">Signature: </p><p class="page-break"><strong>Mr. Dileep Kumar Mudadla </strong></p></div><div class="page-break"><p class="page-break" style="margin-top:20px"><span style="color: transparent"> \SignHere58111\ </span></p><p class="page-break" style="margin-top:20px">Signature: </p><p class="page-break"><strong>Mr. Meeran Shafi Maitheen </strong></p></div>
        <br>
        <p class="page-break"><strong>(For DWTCA Use)</strong></p>
        <p class="page-break">At the Free Zone Department, on this ___________________________, the contents of this document have been
            acknowledged by each of the Partners hereof and his signature has been verified at his request. </p>
        <p class="page-break">Witnessed By <strong>Mr. Abdalla AlBanna</strong></p>
        <p class="page-break" style="margin-top:80px">Signature: - --------------------------------------------------------</p>
    </div>


@Dileep 

I have used the above mentioned approach for other document types like docx before, where it works.

I did a quick search and for HTML the document definition in the JSON is different. You can find an example in this Docusign developer article, which also has code examples to cover this specific bit.


@Michael.Rave I am getting the same error but the process is slightly different. I am adding the anchor strings to the PDF dynamically. The PDF text fields are mapped to fields in our database, and we have specific fields for first recipient required signature, second recipient required signature, etc… When one of these fields is mapped to a PDF field, it will print the appropriate anchor string inside the PDF’s text field.

my anchor string is “/required_buyer_signature/”.

When I look at the PDF that’s being sent to docusign, I see the anchor string printed on the PDF (I have not made the font color white yet just so it will be easier to troubleshoot).

Even if I download the PDF within docusign’s signature portal, and open the document in adobe acrobat reader, I am able to search for the anchor string and find it successfully.

But I cannot get docusign to detect the anchor string. To narrow down the issue, I changed the anchor string to some text that is on the PDF itself, meaning some text that is NOT dynamically generated. When I do that, docusign IS able to detect the anchor string and places the signature tab over the anchor string, which is the expected behavior.

But why is it that dynamically generated text that is printed onto the PDF is not being detected?

PS I am flattening the PDF prior to sending it to docusign and our code base is python.

Any help would be greatly appreciated!!!


@sammy_rabiei 

The issue is probably how the PDF is flattened before sending it to Docusign eSignature. Can you try it without the flattening step? Docusign eSignature will automatically convert the uploaded document to PDF, if it is not already a PDF.

I assume that the flattening algorithm that is used in Python does change it in a way that is it actually not readable for Docusign eSignature. Adobe Acrobat Reader performs an OCR when it loads, so it does not rely on the actual structure of the underlying document and if that is machine readable. 


@Michael.Rave I just tried removing all the flattening but still ran into the same issue. I will test further to make sure that it’s still getting flattened somehow. in the meantime, i got around the issue by adding the anchor string as text to the pdf itself instead of generating it dynamically. i will have to make additional changes because i designed it to print the anchor strings if the fields were mapped to the pdf, but now we’ll need to handle that another way. if you find any other solutions, please let me know because i would’ve really liked to have generated the anchor strings dynamically based on certain conditions. thanks!


I am also experiencing a similar issue. I’m using the C# SDK. The baffling thing is that I can see the anchor strings on documents sent for signing.  If it’s a base64 issue, what options should I explore. In the example code they first create a template with the base64 encoded document before creating the envelope which seems to work. Creating a template feels like an overkill since all the documents are unique.


I got it to work with a docx document. Seems like with pdf, once you base64 encode it, it does not work


@vinarah it seems if you are printing the anchor strings in a text box field on the pdf, then it doesn’t work. i had to edit the pdf by adding text (without adding a text box) directly onto the pdf. sucks because i designed everything to work by dynamically printing the anchor strings in the text boxes if the anchor strings were mapped. then we would look for these fields being mapped to determine if it’s a docusign-able document. i wasn’t able to find a solution so i finally gave up and completely redesigned everything. what’s strange is that even though the anchor string is printed on the pdf, docusign wasn’t picking it up. if you find a solution, please let me know because i would love for this to work as i had originally designed it.


Reply