Skip to main content

Hello,

I’m currently sending some documents to be signed in french language.

I have templates host in my api resources in HTML format. I use openhtmltoolpdf to format my html documents as pdf. My freemarker templates contain some form fields to enable recipients to fill all the info with any PDF reader.

I use some DocusignDate and the html attribute data-pdf-form-field="true" then request docusign to transform the pdf fields with transformPdfFields.

The recipients receive the form well formatted except the date fields.

When i change the regional settings of my admin account, the format of date fields is well updated but the validation is not working anymore. 

 

May anyone help me please ? 

Regards,

Antoine

To investigate this issue further, could you provide the PDF files and the API logs of the issue being reproduced? To get the API Request Logs, login to the DocuSign user that makes the API calls. This article includes visual steps for capturing API Request Logging: https://support.docusign.com/en/guides/ndse-user-guide-api-request-logging

 

Once you get the log, please attach only the request body of the CreateEnvelope API call.


Hello again,

Thanks for the answer and sorry for the delay.

Here are the logs of the envelop creation, and the generated pdf files are included in base 64.

I also join a screenshot of the current regional settings that leads to validation error.

Thanks in advance.

 

Regards


Thanks for the log. I was able to reproduce the same issue. Unfortunately, this issue turned out to be a bug. I filed the Jira case in Engineering and they will investigate this. The Jira case number is TT-7417. We apologize for the inconvenience that has caused, and we greatly appreciate your patience as we work to resolve this issue.

For the time being, as a workaround, I would recommend using a Text tab with a validation pattern and a validation message to enforce the format. More information about the tab types is here: https://developers.docusign.com/docs/esign-rest-api/reference/envelopes/enveloperecipienttabs/#tab-types


Hello,

May you explain me what i’m missing ? 

I can’t make my tabs work.

 

Here is my code

final var documents = request.getDocuments().stream()
.map(docusignDocument -> new Document()
.name(docusignDocument.getName())
.documentId(String.valueOf(docusignDocument.getId()))
.documentBase64(docusignDocument.getEncodedBase64())
.fileExtension("pdf")
.transformPdfFields("true")
.tabs(new Tabs()
.dateTabs(List.of(new Date()
.tabLabel("DocusignDate1")
.required("true")
.validationMessage("date validation"),
new Date()
.tabLabel("DocusignDate2")
.required("true")
.value("14/12/2024")
.validationMessage("date 2 validation")
))
.textTabs(List.of(new Text()
.tabLabel("DocusignText1")
.required("true")
.validationPattern("^e0-3]^0-9]\\/(0]1-9]|110-2])\\/20)2-3]04-9]$")
.validationMessage("validation test message"),
new Text()
.tabLabel("DocusignText2")
.required("true")
.value("TEST")
.validationPattern("^e0-3]^0-9]\\/-0-1]/1-2]\\/20]2-3]04-9]$")
.validationMessage("an other validation message")
))
)
)
.toList();

and here is the template i use, convert it to pdf, base64 and then send it to docusign

 

<h1>TEST docusign</h1>

<form action="">
<input type="text" data-pdf-form-field="true" name="DocusignDate1"/>
<input data-pdf-form-field="true" name="DocusignDate2"/>

<input type="text" data-pdf-form-field="true" name="DocusignText1"/>
<input type="text" data-pdf-form-field="true" name="DocusignText2"/>
</form>

And here is the generated document on docusign

 


@Antoine 

You should define the tabs under the recipient object instead of the document object. Other than the prefill tab, the regular tabs, such as signHereTab, textTab, or dateTab, should be defined under the recipient. 

I would recommend you follow this how-to article to send the envelope with the signHere tab to understand how you can build the envelopeDefinition correctly: https://developers.docusign.com/docs/esign-rest-api/how-to/request-signature-email-remote/

In addition, the PDF form field isn't something you can define through the HTML in my understanding. 


Reply