Contracts

Manage Plan Codes

Plan Code Request Contract

The following objects and attributes make up the Plan Code request contract. When passing the Plan Code request contract, all attributes are optional unless otherwise specified.

ATTRIBUTEDESCRIPTION
entity
object
Required. Entity object containing details about the Plan Code for a loan program that will be applied to a loan file.
entity.entityId
string
Required. The entity ID is the loan GUID.
entity.entityType
string
Required. The entity type loan in URN format. For example, urn:elli:encompass:loan
orderType
string
The type of order, either opening or closing.
import
string
Indicates how the Plan Code data will be applied to the loan.
Possible values are:
all - Apply all data associated with plan code. The current loan data will be overwritten with the selected plan code data.
planCodeOnly - Apply the plan code data and do not update conflicting loan attributes. Any conflicting data will be retained on the loan.
If import is null and there are no conflicts, all data associated with the plan code will be applied to the loan.
If import is null and there are conflicts, no data will be applied to the loan.

Plan Code Response Contract and Attributes

The following objects and attributes make up a Plan Code response contract.

ATTRIBUTEDESCRIPTION
code
string
Unique identifier of the plan code.
description
string
Plan code description.
loanProgramtype
string
Plan code type.
programCode
string
Program code.
investorCode
string
Equivalent to the current 3-digit Investor Code used in the ODI system.
investorName
string
The name of the entity sponsoring the loan program.
investorPlanCode
string
The program-specific identifier used by the loan program sponsor to distinguish the loan program from others offered. Can be a combination of letters and integers or a meaningful text description as provided by the lender, investor, etc.
loanType
string
Specifies the type of mortgage being applied for or that has been granted.
amortizationType
string
Describes the cash flow(s) associated with the loan program.
lienPosition
string
Specifies the priority of the lien of the loan transaction.
ballonLoan
boolean
Indicates whether or not a final balloon payment is required under the terms of the loan repayment schedule to fully pay off the loan.
demandFeature
boolean
Indicates that the loan has a demand feature.
biweeklyLoan
boolean
Indicates loan payments are made on a biweekly basis.
interestOnly
boolean
Indicates the loan program payment schedule includes a period during which payments of interest only are made.
assumabilityType
boolean
Indicates whether the loan is assumable by another borrower.
planFirstChange
string
The number of months after origination in which the first interest rate adjustment occurs, if the interest rate on the subject loan can change.
subsequentChange
string
The number of months between the subsequent rate adjustments if the interest rate on the subject loan can change.
numberOfDaysPerYear
string
Identifies the number of days in a year used in the calculation of the construction loan estimated interest amount and the number of days in a year used in the calculation of the construction loan APR.
prepaymentPenalty
boolean
Indicates the loan includes a penalty charged to the borrower in the event of prepayment.
roundingFactor
number
The percentage to which the interest rate is rounded when a new interest rate is calculated. This field is used in conjunction with ARM Interest Rate Rounding Type which indicates how rounding should occur.
roundingType
string
Indicates how the interest rate is rounded when a new interest rate is calculated for an ARM change. This field is used in conjunction with ARM Interest Rate Rounding Factor which indicates the percentage to which the rounding occurs
indexLookbackPeriod
string
Specifies the point in time prior to the effective date of the payment adjustment at which date the effective value of the published index is taken to compute the new payment.
isConvertible
boolean
Indicates whether the loan has a convertible characteristic to be applied when document files are converted into image files in the eFolder.
recordId
string
Record ID.
isAlias
boolean
Indicates whether the plan code is aliased.
importInvestorToLoan
boolean
Indicates whether the investor name should be imported to loan.
isActive
boolean
Indicates whether the plan code is active.
Id
string
Custom Plan Code Id.
SourceId
string
ICE Mortgage Technology plan Id.
isCustom
string
Indicates if the plan code is a custom plan code.

Apply Plan Code Response Contract and Attributes

The following objects and attributes make up the Apply Plan Code response contract.

ATTRIBUTEDESCRIPTION
status
string
Apply plan code status. Value are:
SUCCESS, CONFLICT, SUCCESS_WITH_CONFLICTS
Conflicts
object
Plan Code Conflict Response with plan code conflicts.
description
string
Plan code description.
encompassFieldId
string
Encompass field ID.
planFieldId
string
Plan code field ID.
planValue
string
Plan code attribute value.
encompassValue
string
Encompass loan attribute value.

Audit Loan File

Audit Opening Input Request Contract and Attributes

The following objects and attributes make up the auditOpeningInput request contract for opening disclosures. When passing the auditOpeningInput request contract, all attributes are optional unless otherwise specified.

ATTRIBUTESDESCRIPTION
entityRequired. Entity object containing details about the loan file.
entity.entityId
string
Required. The loan ID (GUID).
entity.entityType
string
Required. Entity type in URN format. For example, urn:elli:encompass:loan


scope Borrower pair information.
scope.entityId
string
Required. Borrower pair ID or application ID.
scope.entityType
string
Required. Entity type in URN format. For example, urn:elli:encompass:loan:borrower.


packageTypes
Array
Required for User Selected package types. Values can be passed depending on Encompass Settings > Doc Set Up > eDisclosure packages and Control Option. Possible values:
AtApp – At Application
3Day – Three-day
AtLock – At Lock
Approval – Approval
GFE – Include GFE
TIL – Include TIL
LE – Include LE
Note: This attribute is used only for user selected package types. Not needed for company selected package types.
signingModeOverride
string
Permitted Signature type (currently supported value: 'WetSignOnly') for opening documents in the send disclosures flow.
isComplianceAuditRequired booleanThis is an optional indicator which controls whether a compliance audit get performed on the loan. This is applicable only in case of Opening flow.

If this attribute is passed in the request payload this will override LOS encompass settings provided under eDisclosures packages → Included Compliance report with audit.

Audit Closing Request Contract and Attributes

The following objects and attributes make up the auditClosingRequest contract for traditional closing disclosures. When passing the auditClosingRequest contract, all attributes are optional unless otherwise specified.

Attribute Description
entityRequired. Entity object containing details about the loan file.
entity.entityId
string
Required. The loan ID (GUID).
entity.entityType
string
Required. Entity type in URN format. For example, urn:elli:encompass:loan.

Audit Opening Status Response Contract and Attributes

The following objects and attributes make up the compliance audit status output.

ATTRIBUTESDESCRIPTION
entity
object
Entity object containing details about the loan audit status.
entity.entityId
string
The loan ID (GUID).
entity.entityType
string
Entity type in URN format. For example, urn:elli:encompass:loan


dataAuditResult
object
Object containing audit result data.
dataAuditResult.auditRuleMessages
array
List of audit rule messages.
dataAuditResult.auditRuleMessages.
description

string
Encompass data audit message.
dataAuditResult.auditRuleMessages.
fields

string
List of Encompass field IDs associated with the audit errors/messages.
dataAuditResult.auditRuleMessages.
severity

string
Audit message severity such as fatal/required, warning/recommended.


dataAuditResult.message
string
Audit message.
dataAuditResult.status
string
Audit status.


id
string
Unique identifier for the loan audit request.
loanFormPrintRuleResults
object
Loan form printing rule results
loanFormPrintRuleResults
object
Form rule evaluation result.
loanFormPrintRuleResults Loan form printing rule results.
loanFormPrintRuleResults.form Form rule evaluation result.
loanFormPrintRuleResults.form.name
string
Name of the form.
loanFormPrintRuleResults.form.type
string
Type of form (standard or custom).
loanFormPrintRuleResults.printable
boolean
Whether the document is allowed to process.
loanFormPrintRuleResults.reasonsEncompass field error to resolve. The field error must be resolved in order to process documents.
loanFormPrintRuleResults.reasons.field
string
Encompass field ID.
loanFormPrintRuleResults.reasons.reasonText
string
Reason or description.


planCodeConflictResultPlan Code Conflict Result
planCodeConflictResult.conflictFieldsPlan Code Conflict Result
planCodeConflictResult.conflictFields.
description

string
Plan code description.
planCodeConflictResult.conflictFields.
planFieldId

string
Plan code field ID.
planCodeConflictResult.conflictFields.
planValue

string
Plan code attribute value.
planCodeConflictResult.conflictFields.
encompassFieldId

string
Encompass field ID.
planCodeConflictResult.conflictFields.
encompassValue

string
Encompass loan attribute value.


planCodeConflictResult.noOfConflict
integer($int32)
Number of attributes in conflict status.
planCodeConflictResult.planCodeDescription
string
Plan code description.
planCodeConflictResult.planCodeID
string
Plan code ID.


status
string
Loan audit status.
complianceReviewResult.message
string
This gives the overall status on the compliance report generation.
Values can be "Passed", "Warning", "Did Not Pass".
complianceReviewResult.reportStatus
string
This gives the overall status of the compliance report
Values can be:

"PASSED" - All the checks done for compliance review.

"WARNING" - System has recommended warnings with the data provided. User can download the report and check the warnings. Alternatively, user can also refer to complianceReviewResult.auditRuleMessages to see all recommendation.

"ERROR" - System is unable to complete compliance review due to issue(s) in data provided. User can download the report and check the errors.
complianceReviewResult.complianceReport
object
Compliance Report is generated if there are no "Required" data fields reported under the complianceReviewResult.auditRuleMessages.
complianceReviewResult.complianceReport.authorizationHeader
string
Authorization token to download the compliance report.
complianceReviewResult.complianceReport.url
string
URL to download for the compliance report.

Audit Closing Response Contract and Attributes

The following objects and attributes make up the Audit Output response for traditional closing disclosures.

ATTRIBUTESDESCRIPTION
entity
object
Entity object containing details about the loan audit status.
entity.entityId
string
The loan ID (GUID).
entity.entityType
string
Entity type in URN format. For example, urn:elli:encompass:loan


complianceReviewResult
object
Object containing compliance result data.
complianceReviewResult.auditRuleMessages
array
List of compliance rule messages.
complianceReviewResult.auditRuleMessages.
description

string
Encompass data audit message.
complianceReviewResult.auditRuleMessages.
fields

string
List of Encompass field IDs associated with the audit errors/messages.
complianceReviewResult.auditRuleMessages.
severity

string
Audit message severity such as fatal/required, warning/recommended.

NOTE: All required Audits must be fixed at the loan level before ordering documents.


dataAuditResult
object
Object containing audit result data.
dataAuditResult.auditRuleMessages
array
List of audit rule messages.
dataAuditResult.auditRuleMessages.
description

string
Encompass data audit message.
dataAuditResult.auditRuleMessages.
fields

string
List of Encompass field IDs associated with the audit errors/messages.
dataAuditResult.auditRuleMessages.
severity

string
Audit message severity such as fatal/required, warning/recommended.

NOTE: All required Audits must be fixed at the loan level before ordering documents.


id
string
Unique identifier for the loan audit request.


loanFormPrintRuleResults
object
Loan form printing rule results
loanFormPrintRuleResults
object
Form rule evaluation result.
loanFormPrintRuleResults.form Form rule evaluation result.
loanFormPrintRuleResults.form.name
string
Name of the form. For example, “Closing Disclosure”.
loanFormPrintRuleResults.form.type
string
Type of form (standard or custom).
loanFormPrintRuleResults.printable
boolean
Whether the document is allowed to process.


planCodeConflictResultPlan Code Conflict Result
planCodeConflictResult.conflictFieldsPlan Code Conflict Result
planCodeConflictResult.conflictFields.
description

string
Plan code description.
planCodeConflictResult.conflictFields.
planFieldId

string
Plan code field ID.
planCodeConflictResult.conflictFields.
planValue

string
Plan code attribute value.
planCodeConflictResult.conflictFields.
encompassFieldId

string
Encompass field ID.
planCodeConflictResult.conflictFields.
encompassValue

string
Encompass loan attribute value.


planCodeConflictResult.noOfConflict
integer($int32)
Number of attributes in conflict status.
planCodeConflictResult.planCodeDescription
string
Plan code description.
planCodeConflictResult.planCodeID
string
Plan code ID.


status
string
Loan audit status. For example, “Succeeded”.
complianceReviewResult.message

string
This gives the overall status on the compliance report generation.
Values can be "Passed", "Warning", "Did Not Pass".
complianceReviewResult.reportStatus

string
This gives the overall status of the compliance report.
Values can be:

"PASSED" - All the checks done for compliance review.

"WARNING" - System has recommended warnings with the data provided. User can download the report and check the warnings. Alternatively, user can also refer to complianceReviewResult.auditRuleMessages to see all recommendation.

"ERROR" - System is unable to complete compliance review due to issue(s) in data provided. User can download the report and check the errors.
complianceReviewResult.complianceReport

object
Compliance Report is generated if there are no "Required" data fields reported under complianceReviewResult.auditRuleMessages.
complianceReviewResult. complianceReport.authorizationHeader

string
Authorization token to download the compliance report.
complianceReviewResult.complianceReport.url

string
URL to download for the compliance report.

Generate Document Package

Generate Doc Set Request Contract

The following objects and attributes make up the generateDocSet request contract that is passed when generating Opening and Closing packages . When passing the generateDocSet request contract, all attributes are optional unless otherwise specified.

ATTRIBUTESDESCRIPTION
auditId
string
Required. Loan audit ID.
printMode
string
Print options for field values in opening docs. Only LoanData is supported at this time.

Generate Forms Request Contract

The following objects and attributes make up the Generate Forms request contract that is passed when generating on-demand forms. When passing the Generate Forms request contract, all attributes are optional unless otherwise specified.

ATTRIBUTESDESCRIPTION
entityRequired. Entity object containing details about the loan file.
entityType
(string)
Required. Entity type refers to the object for which the forms need to be generated/requested. This is in the URN (Unique Resource Name) pattern. Supported value: urn:elli:encompass:loan.
entity.entityId
(string)
Required. Loan GUID for which the forms need to be retrieved.
scopeRequired. Entity object containing details about the entity reference (borrower pair).
scope.entityType
(string)
Required. Entity type in URN format. Supported value: urn:elli:encompass:loan:borrower.
scope.entityId
(string)
Required. The unique identifier for scope (borrower pair id).
printMode
string
Print options for field values in opening docs. Only LoanData is supported at this time.
templates
array of strings
Required. List of template names. This specifies the list of Standard, Custom forms and Needed documents. These forms and Needed documents can be found under Encompass Settings > eFolderSetup > Documents

Note: To retrieve available templates, call the Get Disclosure Tracking Settings API. If the document template is not added in Encompass Settings or Disclosure Tracking set up, the Send Docs API will fail with a failed dependency error.

Some examples are:
Mortgage Loan Origination Agreement
1008 - Transmittal Summary
Disclosure Notices
1084A Cash Flow Analysis
CA Privacy Policy Disclosure
FHA 203(k) Purchase
Privacy Policy
Settlement Service Provider
VA Rate Disclosure
Closing Disclosure
eFolder
array of objects
This section specifies the additional documents to be added from eFolder.
Required when generating an eFolder document.
eFolder.documents
object
Documents to be added to the package of the recipient.
Required when generating an eFolder document.
eFolder.documents.id
string
Document ID to be added to the package of the recipient.
Required when generating an eFolder document.
eFolder.documents.partyIds
string
List of unique identifiers for the recipient within the package.
Required when generating an eFolder document.
Example: [ Borrower-AdityaFN EDSQABorrower ]
eFolder.documents.partyIds.signatureType
string
Provides information of signature type of the Document. Possible values are:
eSignable – The document can be signed electronically.
WetSignOnly - A paper copy must be signed and returned by mail or fax.
Informational - No signature required.
Required when generating an eFolder document.
signingModeOverride
string
Ability to select a different signature type for a package that includes esignable documents. 
Currently only supports: WetSignOnly - Will override all eSign documents to be treated as WetSign.

Add Documents to a Package

Add Documents Request Contract

The following objects and attributes make up the addDocuments request contract that is passed when adding documents to an Opening or Closing doc set. When passing the addDocuments request contract, all attributes are optional unless otherwise specified.

ATTRIBUTESDESCRIPTION
documentType
string
Required. Type of document to add. Possible values are:
forms - Standard or custom Encompass form.
efolder - eFolder document.


forms
object
Object containing details about the scope.
forms.scope Entity object defining the scope.
forms.scope.entityId
string
Required. Borrower pair ID or application ID.
forms.scope.entityType
string
Required. Entity type in URN format. For example, urn:elli:encompass:loan:borrower.
forms.printMode
string
Print options for field values in Closing docs. For example LoanData.
forms.templates
string
List of form names. For example,
"templates": [
"Closing Disclosure"
]


eFolder
array of objects
Objects defining the eFolder documents to add.
eFolder.documents
object
Object defining an eFolder document to add.
eFolder.documents.id
string
eFolder document ID.
eFolder.documents.partyIds
string
List of party IDs associated with the document.
eFolder.documents.signatureType
string
Signature type. Possible values are:
eSignable – The document can be signed electronically.
WetSignOnly - A paper copy must be signed and returned by mail or fax.
Informational - No signature required.

Send Document Package

Send Package Request Contract

IThe following objects and attributes make up the Send Package request contract that is passed when sending Opening or Closing Packages or On-Demand Forms to a recipient. When passing the Send Package request contract, all attributes are optional unless otherwise specified.

ATTRIBUTESDESCRIPTION
documents
object
Required. List of documents in the document package.
documents.id
string
The document ID.


fulfillments
object
Party details. Party details. Fulfillment options are available when the Fulfilment service is enabled.
fulfillments.toIds
string
List of party IDs.
fulfillments.scheduledDate
string($date-time)
Scheduled date time.
fulfillments.from
object
Fulfillment from contact details.
fulfillments.from.name
string
Contact's name.
fulfillments.from.street
string
Contact's street address.
fulfillments.from.city
string
Contact's city.
fulfillments.from.state
string
Contact's state.
fulfillments.from.zipCode
string
Contact's zip code.
fulfillments.from.phoneNumber
string
Contact's phone number.
fulfillments.to
object
Fulfillment to contact details.
fulfillments.to.name
string
Contact's name.
fulfillments.to.street
string
Contact's street address.
fulfillments.to.city
string
Contact's city.
fulfillments.to.state
string
Contact's state.
fulfillments.to.zipCode
string
Contact's zip code.
fulfillments.to.phoneNumber
string
Contact's phone number.


package
object
Package information and options.
package.from
object
Originator's contact details.
package.from.fullName
string
Originator's full name.
package.from.emailAddress
string
Originator's email address.
package.to
array of objects
Required. Signing party contact details. The list of recipients who will be signing the document. Also known as the "parties list".
package.to.id
string
Unique identifier of recipient.
package.to.fullName
string
Full name of recipient.
package.to.emailAddress
string
Contact email address.
package.to.phoneNumber
string
Contact phone number in E.164 international standard format: +[country code][area code][phone number].

For example, +15558675309

Note: Any other variation will result in an "Invalid data for parameter(s)" error.
package.to.email
object
package.to.email.subject
string
Email subject.
package.to.email.content
string
Pre-merged email content.
package.options
object
Notification options.
package.options.notifyOnReceipt
boolean
This is the notification option available which indicates that sender would be notified when package is received by the recipient. Default value is false.
package.options.notifyOnNoReceiptDate
string($date-time)
This is the notification option available which indicates that sender would be notified if package is not accessed by recipient on the date specified.