CT users: we have added a new "PDFMergeWithDocInstances" output type to our available ancillary outputs; we have also address an issue where merged PDF's were failing in SelectGenerateAndDeliver, SelectAndGenerate, and Deliver API calls.
We have enhanced the information around Callbacks in the Expere Document Services webhelp. For more information, see Callback Overview, CallbackHandler, and DeliveryResponse.
We have introduced a new <Sequencing/> element to the following field types in the Expere response file:
This <Sequencing/> element is implemented for the Secure Document Exchange (SDX) product for those users who sign across documents. It also makes each field unique so can merge PDF documents that use signature, date, initial, and fillable text fields.
If the "MergePDF=true" in the response file, the Signature, Date, Initials, FillableCheckboxes and FillableText field types elements will contain sequencing in the <FieldName/> element using an incremental numbering system with an underscore.
Sequencing logic and format example:
<r:SignaturePointSet> <r:Signer> <r:Id>Homer</r:Id> <- Signer ID <r:Description>Borrower, Borrower</r:Description> <r:SignaturePoints> <r:Type>Initials</r:Type> <r:Sequencing>1</r:Sequencing> <r:FieldName>INI_Borrower_null_homer_false_1_SigField_1</r:FieldName> </r:SignaturePoint> <r:SignaturePoint> <r:IncludeDate>true</r:IncludeDate> <r:PageNumber>1</r:PageNumber> <r:SignatureText>Homer Simpson</r:SignatureText> <r:Type>Signature</r:Type> <r:Sequencing>2</r:Sequencing> <r:FieldName>SIG_Borrower_null_homer_false_1_SigField_2</r:FieldName> </r:SignaturePoint> <r:FillableFieldSet> <r:FillableText> <r:FieldName>FillableField_3</r:FieldName> <r:ToolTip>fill in here</r:ToolTip> <r:PageNumber>1</r:PageNumber> <r:Width>420.0</r:Width> <r:Height>72.0</r:Height> <r:XCoordinate>56.0</r:XCoordinate> <r:YCoordinate>100.0</r:YCoordinate> <r:Sequencing>3</r:Sequencing> </r:FillableText> <FillableCheckBox> <r:FieldName>FillableCheckBox_4</r:FieldName> <r:ToolTip>check here</r:ToolTip> <r:PageNumber>1</r:PageNumber> <r:Checked>false</r:Checked> <r:XCoordinate>22.0</r:XCoordinate> <r:YCoordinate>140.0</r:YCoordinate> <r:Sequencing>4</r:Sequencing> </FillableCheckBox> </r:FillableFieldSet>
Users may now use the <InstanceFileName/> element in the Attachment data type in SelectGenerateAndDeliver, SelectAndGenerate, and Generate requests. Previously, this element could not be passed in a request. Including the <InstanceFileName/> element in the request will allow the specified name to be returned in the response.
For example:
<DisplayName>Good Faith Estimate (GFE) - VMP116F.pdf</DisplayName> <InstanceFileName>b11c853cb1c1431c9fc0028feaa014b7</InstanceFileName>
If the request does include a value for <InstanceFileName/>, Expere Document Services will return a "default" value.
We have added a new <SignerEmail/> element to the <Signer/> element.
This element appears in the Expere response file when including the "eSignatureWKES" flag in the initial request. Sample code below:
The Resubmit API now functions with a Deliver call; in the event of an outage or other unforeseen service interruption, those transactions sent or included in a Deliver call can now be resubmitted without re-initiating the transaction submission process. There is no change to the Expere Document Services WSDL.
Wolters Kluwer Electronic Signature (WKES) users can now initial documents with a fillable text field (Acroform) using a new element called </eSignatureWKES>, as a child of the </ESignatureAndFieldSupport> element in the </AncillaryOutputOption>. If setting this element to "true," the initials render as a fillable text field on the document(s). By default, this element is set to "false" and renders as an eSignature field. In a future release, WKES users will be able to capture initials one time per signer and populate those initials to all the respective signer fields.
<r:AncillaryOutputOption> <r:OutputType>ESignatureAndFieldSupport</r:OutputType> <r:ESignatureAndFieldSupport> <r:eSignatureTooltip/> <r:eSignatureInitialsTooltip/> <r:eSignatureCoordinatesOnly>false</r:eSignatureCoordinatesOnly> <r:eSignatureDateSupport>true</r:eSignatureDateSupport> <r:NonSignatureFieldCoordinatesOnly>true</r:NonSignatureFieldCoordinatesOnly> <r:eSignatureWKES>false</r:eSignatureWKES> </r:ESignatureAndFieldSupport> </r:AncillaryOutputOption>
The <DiscretePartyIDs/> element is now included in the Expere Response to support the Discrete Party Feature. DiscretePartyIDs is a sibling to the <InstanceDisplayName/> element and a child element of <DocInstance/>.
<Packet PacketName="Default" PacketFileName="Default.pdf"> <DocInstances> <DocData> <base64>JVBERi0xLjQKJeLjz GFydHhyZWYKMjUxOTIKJSVFT0YK</base64> <text xsi:nil="true"/> <xml> <NotApplicable/> </xml> </DocData> <InstanceDisplayName>Business Debit Card Agreement - VISA(TM) CheckCard</InstanceDisplayName> <InstanceFileName>Default-Business_Debit_Card_Agreement_-_VISA_TM__CheckCard.pdf</InstanceFileName> <InstanceFormattingMetadata xsi:nil="true"/> <InstancePacketType xsi:nil="true"/> <InstancePacketName xsi:nil="true"/> <InstanceDocumentRef xsi:nil="true"/> <InstanceSequence xsi:nil="true"/> <InstanceBarcodeValue xsi:nil="true"/> <InstancePageCount xsi:nil="true"/> <DocFormat xsi:nil="true"/> <Copy xsi:nil="true"/> <SignaturePointSet xsi:nil="true"/> <DiscretePartyIDs> <DiscretePartyID >60593</DiscretePartyID> <DiscretePartyID >60594</DiscretePartyID> </DiscretePartyIDs> </DocInstances>
The <Packet/> now contains the following attributes:
These attributes are included in the <Packet/> element so users can create packets of documents.
Previously, Expere Document Services only returned one DocInstance when merging PDF documents. As a result, only one set of elements was returned, rather than multiple sets of elements determined by the number of DocInstances.
Expere Document Services now returns separate DocInstances when the merged PDF is set to "true" in the response file.
For more information, see the following:
It was reported that documents were not being delivered as a merged PDF when the PDFMerge attribute was present on a SelectGenerateAndDeliver, or SelectAndGenerate followed by a Deliver call.
This issue has been resolved; SelectGenerateAndDeliver, SelectAndGenerate, and Deliver API calls once again deliver merged PDF documents.
We have created a new ancillary output option called PDFMergeWithDocInstances to support returning DocInstances for each document in the package, when merged PDF is desired.
When this new ancillary option is included in the request, the response will include one Base64 merged PDF within the first <DocInstance/>. All additional <DocInstance/> entries within the response will contain elements that pertain to the specific document(s). For example: <InstanceDisplayName>, <InstanceFileName>, etc.
<data:AncillaryOutputOptions> <data:OutputType>PdfMergeWithDocInstances</data:OutputType> </data:AncillaryOutputOptions>
We now return the <InstancePageSize/> element value in the Expere EDS response file. Users can set the value for the <InstancePageSize/> element in the DocInstance data type.
The <DiscretePartyID/> element is now available in the Expere Document Services WSDL within the complexType DocInstance. This change is implemented to support Discrete Borrower functionality, which will be included in a future release
WSDL Enhancement
<xs:complexType name="DocInstance"> <xs:sequence> .... <xs:element minOccurs="1" maxOccurs="1" name="DiscretePartyIDs" type="tns:DiscretePartyIDs"/> </xs:sequence> <xs:attribute name="DocIDRef" type="xs:string"/> </xs:complexType>
The <DiscretePartyID/> element is now available in the Expere Document Services WSDL in the DocInstance complex type. It is a sibling to the <InstanceDisplayName/> element and a child element of <DocInstance/>.
The <DiscretePartyID/> element is part of a future enhancement that will be introduced in a future Expere Document Services release.
<DiscretePartyIDs> - <DiscretePartyID>x</DiscretePartyID> <DiscretePartyID>x</DiscretePartyID> </DiscretePartyIDs>
Previously, callbacks for Delivery service were unsuccessful due to the callback URL and Username not being saved in the request
This issue has been resolved; submitting a SelectGenerateDeliver request with callback now contains the URL and user name in the Request Callback node.
Previously Expere Document Services allowed Select, Generate, SelectAndGenerate, or SelectGenerateDeliver requests to be passed to Document Generation Services when no transaction data was provided. The user then received a Transaction ID that never generated documents and only provided an error, due to the invalid transaction.
This has been corrected. Now when a request is submitted the transaction data is validated prior to Expere Document Services providing a Transaction ID and sending it on to Document Generation Services. In the future, if the transaction data is not provided in the request, the end user will not receive a Transaction ID and receive an error instead.
It was reported that documents were not being returned for certain transactions in Expere Document Services. While Document Generation Services generated the documents, Expere Document Services displayed the status of the transaction as Incomplete. We have determined the timing of certain callbacks to Expere Document Services caused inaccurate transaction statuses.
This issue has been addressed; statuses are now returned as Complete for successful transactions.
Previously, the SignaturePointSet element was set to "null" rather than contain signature field names and data.
The SignaturePointSet element has been enhanced to include the signature field name and data that appear on the form.
"SignaturePointSet": {
"Signer": [
{
"Id": "Signer",
"Description": "Borrower, Borrower",
"SignaturePoints": [
{
"IncludeDate": false,
"PageNumber": 2,
"PageOrder": "1",
"Height": 36,
"Width": 198,
"SignatureText": "Jane eSignature",
"XCoordinate": 36,
"YCoordinate": 650,
"Type": "Signature",
"FieldName": "SIG_Borrower_2_Signer_false_1"
},
{
"IncludeDate": false,
"PageNumber": 2,
"PageOrder": "1",
"Height": 36,
"Width": 50,
"SignatureText": "Jane eSignature",
"XCoordinate": 238,
"YCoordinate": 650,
"Type": "Date",
"FieldName": "SIG_Borrower_2_Signer_false_1.eSigDate"
}
]
}
The messages used with the GetGenerateResults API have been updated to provide enhanced details if an error occurs during processing. These error messages now match those included with callbacks.
For example: a message like “Transaction is complete with errors” has been updated to state “No documents were supplied for assembly.” where applicable.
These error messages now match those included with callbacks.
Previously, we enhanced Document Generation callbacks for Expere Document Services to include a retry mechanism (PBI 382253); however, it was reported that five (5) retries occurred per request made in the CT environment. This occurred due to every request resulting in an exception on the callback acknowledgement even if an error did not occur.
We have made additional enhancements so that retries do not occur when a callback is successful. Retries now only occur when the thrown exception is “EndpointNotFoundException” or exception message contains words like “Listening” or “Timeout."
After submitting a transaction in Expere Document Services, users will now receive a response file containing the Package Documents, which contain <DocCustomData/> elements in the packages.
The new elements exist as children and grandchildren of the <r:DocDescriptor/> element. The <r:DocCustomDataItem/> elements contain the following DataItemName attribute values:
Expere Response XML values:
<r:DocCustomDataItems> <r:DocCustomDataItem DataItemName="">34453</r:DocCustomDataItem> <r:DocCustomDataItem DataItemName="/Txn/ IntegratedDisclosuresLoanEstimateTotalClosingCostsStoredValueAmount">34287</ r:DocCustomDataItem> <r:DocCustomDataItem DataItemName="/Txn/ IntegratedDisclosuresLoanEstimateClosingCostsFinancedStoredValueAmount">-34287</ r:DocCustomDataItem> <r:DocCustomDataItem DataItemName="/Txn/ IntegratedDisclosuresLoanEstimateCashToCloseStoredValueAmount">107815</r:DocCustomDataItem> </r:DocCustomDataItems>
Previously, when the Passthroughidentifier was not being passed on a Deliver request, Expere Document Services could not successfully return a Deliver callback status.
This issue has been corrected; now if the Passthroughidentifier is not provided in a Deliver request it will use the Passthroughidentifier from the SelectAndGenerate request of that transaction to complete the Deliver callback.
Document Generation callbacks have been enhanced for Expere Document Services; callback functionality includes a retry mechanism.
Expere Document Services reattempts a document generation callback in the following intervals:
In a previous release, we had released First Page Barcode functionality, albeit in limited functionality.
First Page Barcode is now fully functional in Expere Document Services for SelectGenerateAndDeliver, SelectAndGenerate and Generate methods.
A new Passthrough Identifier parameter has been added to the Deliver API. The PassThroughIdentifier is an optional-user generated parameter that eliminates duplicate entries in Expere Document Services.
For more information, see DeliverIn.
After the Expere Document Services database was migrated from Raven to SQL,the Scheduler Service has been enhanced to remove transactions older than seven days from Expere Document Services. Users will no longer be able to retrieve these transactions.
The Expere ListDocuments API is now available through Expere Document Services.
The ListDocuments option calls a base or custom package of documents defined by the customer. The list of documents in the base or custom package is displayed for the end user to select and use for a given transaction.
Previously, the SelectGenerateAndDeliver API call only utilized the delivery callback service. As a result, if an error occurred when generating the documents in Document Generation Services, no callback was sent, and the integrator did not know if the transaction was successful.
Callback behavior has been enhanced; users are now alerted if an error occurred when generating documents in Document Generation Services.
See SelectGenerateDeliver Callback Overview for more information.
Summary: Users can now apply a barcode to the first or only page of a document. For detailed information on using this feature , see the Using First Page Only Barcodes webhelp page.
When passing an invalid URI, a URI for a nonexistant package, or request with an error in DGS or Expere, the callback indicates the following:
Previously, the Delivery ID was not returned when using the Select and Generate and Delivery API's separately; as a result, users could not access the delivered image.
This issue has been addressed; the Delivery ID is returned when submitting a transaction with the Select and Generate and Delivery API's.
The effective date for all products within the scope of this document for this release is February 4 for the CT environment and February 18 for the Production environment.
For detailed integration information, see GetRequestStatus.
Previously, the Expere Document Services PassThroughIdentifier parameter was not case sensitive; it would not distinguish between a capital or lower case letter.
Due to customer requirements, the Expere Document Services database has been updated so that the PassThroughIdentifier now distinguishes capital and lower case letters.
See GenerateIn; SelectAndGenerateIn; SelectGenerateDeliverIn for more information on using the PassThroughIdentifier parameter.
The effective date for all products within the scope of this document for this release is November 23 for the CT environment and December 8 for the Production environment.
Previously, our reporting application displayed the Created timestamp in Central time and other mailing status timestamps in UTC time.
This issue has been resolved; timestamps for all mailing histories now appear in Central time.
The Expere Document Services database has been converted from Raven to SQL. Note that there will be no change to the Transaction ID itself.
The loan number sent through the Deliver and Select, Generate, and Deliver API calls now appears in the Fulfillment Manager if included in the transaction data.
Request, or callback, functionality has been enhanced in Expere Document Services to automatically reattempt a failed request so the time to obtain a successful transaction is reduced.
Expere Document Services now reattempts a request in the following intervals:
Previously, duplicate packages were routed to Print Fulfillment. If the transaction ID was not returned immediately, another Select Generate & Deliver call was initiated with the same PassThroughIdentifier.
A table has been added to the SQL database that saves the transaction ID and PassThroughIdentifier immediately. Expere Document Services analyzes this table to determine if the PassThroughIdentifier already exists.
If the PassThroughIdentifier exists, the existing transaction ID is returned to the user details in the log file that a response was sent to the user. If the PassThroughIdentifier does not exist, a new transaction is created and a record saved in the Expere Document Services Raven and SQL table.
The new SQL contains the EDS Request Details, Date/Time Created, and RavenTransactionID (EDS Transaction ID).