WebConnect Integration Guide Feb2016

Download as pdf or txt
Download as pdf or txt
You are on page 1of 55

WebConnect

Technical Integration Guide

February 2016
Copyright © 2004-2016 Calyx Technology, Inc., dba Calyx Software. All rights reserved. Information in
this publication is subject to change without notice.
Calyx Software makes no representations or warranties with respect to this information and will not
guarantee the accuracy and completeness of any information. Users of this information do so with the
understanding that Calyx Software is not engaged in the practice of law and does not render legal,
accounting, or other professional services. This publication is intended for educational and
informational purposes only.
The information contained herein is fictional. Borrower names, company names, addresses, social
security numbers, and other identifying information are not real and are used only to illustrate the
product functionality.
No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or
by any means, electronic, mechanical, photocopying, recording, or otherwise, without the prior written
permission of Calyx Software. Making unauthorized copies of this publication for any purpose other
than your own personal use is a violation of United States copyright law.
Calyx Software, Point, and WebConnect are registered trademarks of Calyx Technology, Inc.
Various other copyrights, trademarks, and service marks used or referenced in this publication are the
property of their respective companies and owners.
February 2016.

Calyx Software
6475 Camden Avenue, Suite 207
San Jose, CA 95120
Corporate Office: (408) 997-5525
Product Support: (800) 342-2599
Sales: (800) 362-2599
Contents
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii
Product assistance and support. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .vii
Chapter 1—Technical overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
Chapter 2—Point user interface. . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Lenders menu navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Menu options and tabs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Interfaces menu navigation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Profile screen functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Chapter 3—Profiles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Interface provider profile information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Interface menu category. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Chapter 4—Embedded web browser. . . . . . . . . . . . . . . . . . . . . . 13
WebConnect browser restrictions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Chapter 5—SDK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
SDK installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Launching the interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Chapter 6—Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Method names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
WebConnect Statuses and Documents. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Samples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Chapter 7—Data format notes. . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Special behaviors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Chapter 8—Interface updates . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Chapter 9—Transaction registration . . . . . . . . . . . . . . . . . . . . . . 51
FAQs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

v
Preface
The purpose of this guide is to provide you with the information that you need to develop
your interface with the Calyx WebConnect platform. WebConnect offers an embedded
interface so that Point users can access your products directly through Path. The
WebConnect interface takes advantage of the data standardization offered by MISMO.
This information consists of the following topics:
• Chapter 1, Technical overview, provides a high-level overview of the architecture.
• Chapter 2, Point user interface, describes the Point user interface.
• Chapter 3, Profiles, describes how to define the configurable characteristics of
your interface.
• Chapter 4, Embedded web browser, explains the embedded WebConnect
browser.
• Chapter 5, SDK, provides installation instructions and other important information
about how to use the WebConnect Software Development Kit
• Chapter 6, Methods, describes the WebConnect method names.
• Chapter 7, Data format notes, describes the interface rollout procedures.
• Chapter 8, Interface updates, describes the Calyx I-Update process.
• Chapter 9, Transaction registration, describes the billing interface used when a
Point user places an order.

Product assistance and support

Important

The following information is provided for vendor integration purposes


only. This information is not intended for Point users and therefore, we
respectfully request that this information remain confidential.

The following resources are available for sales, support, and general questions:

Issue Contact information


Accounting/collections 408.997.5525 ext. 3003
[email protected]
Interface technical support/implementation 214.252.5603
[email protected]
I-Update support 214.252.5607
[email protected]
Marketing 214.252.5636
[email protected]
Point user support 800.342.2599
[email protected]
Integration sales/general questions 214.252.5610
[email protected]

vii
Technical overview 1
Point uses Microsoft Internet Explorer Web Browser Control as a host application for the
interface. In most cases, Internet Explorer is the host application for the control, but
Microsoft allows other applications, such as Point, to be a host application.
This architecture allows your client-side HTML script to invoke the methods of the Point
host application in real time by referring to window.external.<method>.
These methods are used to read data from the currently open Point file and return it to the
caller, or write data the caller passes to the Point file. The following diagram shows a high-
level overview of Point hosting the web browser control, with WebConnect methods made
available to your HTML code.

1
Point user interface 2
The WebConnect platform is available to both lenders and service providers. Although the
GUI (graphical user interface) is different for lenders and service providers, the underlying
functionality of the product is the same. Refer to the appropriate section for your
reference.

In this topic

• Lenders menu navigation


• Interfaces menu navigation
• Profile screen functions

Lenders menu navigation


The lender WebConnect interface is available from the Lenders menu in Point. Lenders
are listed in ascending alphabetical order.

Lenders menu

Mortgage
Application tab

Lender
Profile tab

Generic company references on this screen and throughout this information, for example
<Company Name> and <Company Website>, are used as place holders for examples
shown in this document. When you complete your Interface Submission Form that
contains all of your company profile information such as name, website name, and loan ID
label, the information that you specified will display instead.

Related information

Refer to the WebConnect Project Management Guide for information


about the Interface Submission Form.

3
Point user interface

Menu options and tabs


Getting Started
When the user selects Lenders > <Company Name> > Getting Started the web
page URL that you specified in your profile is launched in a browser. This menu
option is designed to quickly connect customers with you so they can learn how to
set up an account, obtain contact information, and find answers to any other
questions that they might have.
Other options on the menu navigate to the remaining interface which is comprised of a
self-contained area with two top-level tabs.
Mortgage Application tab
The Mortgage Application tab is contains buttons to access data entry screens for
each page of the Loan Application, the Fees Worksheet, and Truth-in-
Lending (TIL). An Addendum screen and a Government screen are also
provided because they contain MISMO data elements that are not included in the
Loan Application, Fees Worksheet, and Truth-in-Lending screens, which is
the primary orientation of WebConnect.
Lender Profile tab
<Company WebSite> is your company website name.

Interfaces menu navigation


Service providers are accessible from the Interfaces menu in their specific service
category.
Services providers also utilize data that is entered on the following screens:
• Forms > Loan Application, pages 1 through 4
• Forms > Fees Worksheet
• Forms > Good Faith Estimate

4 CalyxSoftware
Interfaces menu navigation

• Forms > Truth-In-Lending


• eLoanFile > Property
• eLoanFile > Loan Program
• eLoanFile > Additional Loan Data
• Track > Registration & Rate Lock
• Track > HMDA Reporting
• Track > Agent List
• Track > Branch Team
• Banker > Secondary Marketing
• Banker > Conditions
• Banker > Closing Documents (all screens)
These data entry screens encapsulate most of the MISMO data for WebConnect
integration.
A Point user would use the following steps to select a service provider in Point:
1 Select Interfaces > (Service category).
The Interfaces dialog box for that service category is displayed which contains a list
of companies, in ascending alphabetical order, that provide that service.

Note

The More Information button launches a separate Internet Explorer


browser that displays your Getting Started page which you specified
on the Interface Submission Form.

WebConnect Integration Guide 5


Point user interface

2 Select a company name and click OK.


The profile page for that service provider is displayed.

Important

If you have two WebConnect interfaces in the same category, they must
each have a unique company name. You can specify the distinction
between the company listings on the WebConnect Interface Submission
Form.

6 CalyxSoftware
Profile screen functions

Profile screen functions


The profile page setup is described below.

Getting Started link


When the Point user clicks the Getting Started link, the web page URL that you
specified in your profile is launched in a browser. This menu option is designed to
quickly connect customers with you so they can learn how to set up an account,
obtain contact information, and find answers to any other questions that they
might have.
Company Loan ID Label
The CompanyLoanIDLabel is a read-only field that identifies the loan or order
number to the Point user as it is referenced in your system. You can use any
alphanumeric code for the Loan ID which can change throughout the loan
process.
Clear/Edit button
The Clear/Edit button is a toggle. The Clear button is used to delete the existing
data that links the Point file and your website by clearing the loan ID prior to when
the Point user copies the file for another loan. Before the data is deleted, a
confirmation dialog box is displayed.
When the Edit button is clicked, the field is enabled for the Point user to enter a
loan ID. The interface website identifies the loan and Point imports existing data
and documents from the interface.
Table of statuses and documents
The table of statuses (i.e., Rate Lock, Lock Extended, 05/24/2012, 13:00) and
documents (i.e., Underwriting Findings, Credit Report, Title Commitment, etc.) are
specific loan elements that are stored with the loan file.

WebConnect Integration Guide 7


Point user interface

Documents and statuses are sent through the WebConnect functions, and are
displayed on this screen.
You can configure the status to display with or without a corresponding document.
However, if documents and statuses are saved, they are associated with the
currently open Point file. If documents are sent by your website to be stored with
the Point file, these documents are also automatically stored in the document
repository, available from the eLoanFile > Document Management menu option.
Launch <Company Website> button
When clicked, the <Company Website> button saves the current Point file and
launches your website in an embedded Internet Explorer browser within a modal
dialog box on Point.

The URL contains three parameters from Point. For example:


https://www.company.com/
landing.html?CalyxPlatform=4.0&CalyxLoanGUID=ABC&CompanyLoanID=
123
CalyxPlatform
This parameter is obsolete. Do not use.
CalyxLoanGUID
The internal globally-unique identifier for the open Point file. It is also the primary
ID that is used for monthly billing.

Note

This ID can also be used to verify billing and check for duplicate loans,
identification (for example, the Point Loan GUID and Company Loan ID).

CompanyLoanID
An identifier for your loan record that corresponds to the Point file. Initially it is
blank, but once it is assigned, it is provided to your website on subsequent
launches so you can establish the matching loan context in your website.

8 CalyxSoftware
Profile screen functions

You can pass these parameters between your system and Point at anytime by
calling the methods GetCompanyLoanID and GetCalyxLoanGUID during the time
the user is browsing your website.

Important

Your website must be secured by HTTPS to protect the data that might
be exchanged through the browser inside Point.

After the user launches your website, they are able to browse your website
normally but with the capability of dynamically exchanging data between your
website and the currently open Point file.
When the user clicks Exit <Company Website> the website and the dialog box close, the
user is returned to Point, and the Point file is saved. When these actions are complete,
Point sends the billing information to the Calyx Transaction Management Server.

Related information

Refer to Chapter 6, Transaction registration, for information about the


Calyx Transaction Management Server.

WebConnect Integration Guide 9


Profiles 3
The profile information for interface and service providers is included in this topic.

In this topic

• Interface provider profile information


• Interface menu category

Interface provider profile information


The following characteristics define the information in your interface. Use the Interface
Submission Form to specify these settings.

Setting Description Valid values


AccountID The Calyx-assigned, unique identifier of (any string)
your company.
CompanyName How your company name is to be (any string)
displayed on Point screens.
CompanyWebsite How your website name is to be displayed (any string)
on Point screens.
CompanyGettingStartedLink Your marketing web page URL that is (any URL)
specifically designed to sign up Point users
and provide them technical support.
CompanyProcessURL The landing page where the user is (any URL)
directed in the embedded web browser in
Point.
CompanyLoanIDLabel The text label for the field that contains the (any string)
company loan ID that the company
assigned for this loan.

Interface menu category


Interface menu categories are determined by Calyx and are modified in the monthly I-
Updates. Non-lending providers that use WebConnect must classify their interface under
one of the existing categories on the Interfaces menu. A provider can list their interface
under multiple categories. However, each listing is considered a separate interface in
regard to fees and certification.

Important

Calyx reserves the right to change the Interface menu categories at any
time and move an interface to a different category if necessary.

Setting Description Valid values


CalyxCategory The category where company is contained. Categories
Company can select any category on the defined by Calyx
interfaces menu.

11
Embedded web browser 4
The embedded web browser (WebConnect browser) uses the Internet Explorer (IE) Web
Browser Control 6.0 or later (whichever is currently installed on the Point user’s machine
along with Internet Explorer). It is a special host application of the browser control
embedded in Point to expose WebConnect methods to the external calls (for example,
your website client-side script). The browser control is also used by Internet Explorer as
another host application. Since the WebConnect browser uses the same control as
Internet Explorer, most of their settings are shared. There are, however, differences
between certain settings in the WebConnect browser and Internet Explorer.

WebConnect browser restrictions


The WebConnect browser works the same as the standard Internet Explorer browser,
however, for security reasons, the following restrictions apply:
Menu
The browser enables the following five functions (all other functions are disabled):
• Back
• Forward
• Refresh
• Print
• Save As

13
Embedded web browser

Address bar
The Address bar is hidden in the browser.

Restriction

Because random websites can access or update loan data from the open
Point file by calling WebConnect methods, you must restrict access to any
functions that allow the user to browse to any arbitrary sites from the
WebConnect browser.

The following graphic shows an example of an Internet Explorer browser.

The following graphic shows an example of a WebConnect browser.

Plug-ins
Plug-ins (for example, Google Toolbar) are not available in the WebConnect
browser.
Ctrl-N (new window)
The hotkey to spawn a new Internet Explorer browser from the same process is
disabled in the WebConnect browser.
Ctrl-O (open)
The hotkey to open a file or URL is disabled in the WebConnect browser.
F11 (full screen)
The hotkey to toggle to full screen mode is disabled in the WebConnect browser.
Pop-ups
Every pop-up created in the WebConnect browser is displayed in child
WebConnect browsers. Each child WebConnect browser inherits the same
session from its parent instance of the WebConnect browser. When the parent
WebConnect browser is closed, any associated child WebConnect browsers are
forced to close and the user is returned to Point.

14 CalyxSoftware
WebConnect browser restrictions

Pop-up blocker
The Pop-up blocker provided by Internet Explorer 6.0 SP2, or later, is not
available in the WebConnect browser.

WebConnect Integration Guide 15


Embedded web browser

Auto Complete
The Auto Complete feature provided by Internet Explorer is not available in the
WebConnect browser.

16 CalyxSoftware
SDK 5
After a contract is signed, Calyx Software will provide you with the Calyx WebConnect
SDK, a special plug-in for Point. It is a three-step installation:
1 Install the latest version of Point.
2 Install the WebConnect SDK plug-in so the WebConnect SDK menus are enabled in
Point.
3 Extract the zip file that contains all of the WebConnect documentation, mapping
information, and sample files.
The Calyx WebConnect SDK functions the same as the Point version in Production,
except that the menu options focus solely on setting up and defining your profile. The
launch behaviors for the Getting Started link and Launch <Company Website> button
produce an additional dialog box that contains a field for you to input the URL to launch.
Also, you can right click only from the WebConnect SDK-embedded browser window
where you can select View the source file for debugging purposes.

In this topic

• SDK installation
• Launching the interface

SDK installation
A unique account ID is assigned at the time the Calyx WebConnect SDK is shipped. The
account ID is required input during installation. Install Point first from the installation file

17
SDK

and then install the SDK. During Point installation, enter your unique account ID to
proceed.

After the Point installation is finished, run WebConnectSdk.exe to install the SDK plug-in
on the Lenders menu and place an entry in each of the Interfaces menu categories. A

18 CalyxSoftware
SDK installation

separate exe file also installs the WebConnect technical documentation and samples on
your system.

The Point Calyx Closing v2_6_Mapping.xls spreadsheet details the xpaths and export logic for
Point data fields. The Calyx Closing version 2.6 is based on the MISMO Closing version
2.6 with Calyx extensions. Calyx Closing 2.6 does not validate against MISMO Closing 2.6
because the MISMO Closing 2.6 DTD denies any extensions. The WebConnect SDK zip
file includes a Calyx Closing version 2.6 schema xsd file for defining and validating the
XML format.

WebConnect Integration Guide 19


SDK

The samples contain selected exports of Point files to illustrate the various Point datasets.
These files are located at C:\WINPOINT\WebConnectSDK\SamplePointFiles.

To use the sample files in Point, copy all of the files to the BORROWER subdirectory in a
Point data folder. To use the default Primary Data Folder created during Point installation,
copy all of the files to C:\PNTDATA\BORROWER.

20 CalyxSoftware
SDK installation

Important

Point uses and maintains an index to provide instant access to potentially


thousands of loan files in a data folder. When you copy files directly into
a Point data folder, the index is not automatically updated. Therefore, the
files are not accessible immediately from Point. To access the files, you
must re-index, or rebuild, the data folder.
To rebuild your lists:
1 From the Loans tab in Point, select File > Rebuild List.
The Rebuild Index dialog box is displayed.
2 Select the Primary Data Folder from the Data Folder dropdown list.
3 Select the Borrower check box to indicate the list that you want to
rebuild, and click Start.
4 Click OK in the Rebuild Index dialog box.
5 Click Close in the Rebuild Index dialog box to return to the list of
loans.
6 Click search to view the list of loans.

The sample loans are now included in the loan list. Use these examples to view loan data
in Point and interact with your WebConnect website, for example, transfer loan data from
Point, work with the file on your website, the transfer the data back in to Point.

WebConnect Integration Guide 21


SDK

Launching the interface


After the Calyx WebConnect SDK is successfully installed, complete the following steps to
launch your site where the WebConnect methods need to be implemented to exchange
Point loan data.
1 Start Point.

2 Click Search.
3 Open a sample loan file from the search result by double-clicking on the loan.

22 CalyxSoftware
Launching the interface

4 To use the SDK as a lender:


a From an open loan file, select Lenders > <WebConnect SDK> > <Company
Site>.

b Click the Launch <Company Website> button to access the URL confirmation
dialog box.

5 To use the SDK as a service provider:


a From an open loan file, select Interfaces > <Category>.

WebConnect Integration Guide 23


SDK

The dialog box with the providers for the selected interface is displayed.

Important

If you plan to list your company under multiple categories, the following
information applies:
• You must use a unique company name for each category.
• You must specify the categories and URLs on the Interface
Submission Form.
• Your agreement must allow for multiple listings in Point as multiple
listings incur additional costs.

b Select <WebConnect SDK> from the list.

24 CalyxSoftware
Launching the interface

Your profile page is displayed.

c Click the Launch <Company Website> button to access the URL confirmation
dialog box.

This dialog box does not exist in the Point production environment and is not visible to
the Point user. Calyx WebConnect SDK opens this dialog box to confirm the URL you
want the WebConnect browser to launch. The most recent URL entered in this dialog
box is remembered.
Calyx provides a test page for use with the WebConnect SDK. You can access this
site from the following link:
https://webconnect.calyxsoftware.com/WebConnect/data/
WebConnectSdkSample.html
6 Enter the URL of the web page that you want to launch when the Point user clicks the
Launch button on your <Company Website> page and click OK or click OK to
accept the existing URL.
You can use this dialog box to work in different environments, for example,
development, integration, and QA at the implementation stage.

WebConnect Integration Guide 25


SDK

You can also customize the Getting Started link to point to your development Getting
Started page rather than the default Calyx Software page. The Getting Started link is
used in the SDK version only to aid with your development. The dialog box does not
exist in the production environment and the link goes directly to the
CompanyGettingStartedLink that you specified in your profile.
7 Access the Getting Started link dialog box.
• If you are a lender, access the Getting Started link dialog box by selecting
Lenders > <WebConnect SDK> > Getting Started.
• If you are a service provider, select Interfaces > Category, select the
<WebConnect SDK> option from the list, and click the More Information button.
The Getting Started link on the <Company Website> page immediately opens an
Internet Explorer browser window to the URL that was specified in your company
profile for the Getting Started link. The Point loan data is not accessible from this
window.

26 CalyxSoftware
Methods 6
Your running website can interact with Point and the current loan file by having the client-
side script call methods referenced by window.external.<methodname>.
The WebConnect methods are available only when your site is launched through the
embedded web browser. The methods are NOT available if the sites are accessed directly
from Internet Explorer, so your website scripts should properly handle the error.
The general format of the method is [out] Integer window.external.<method
name>([parameter]).
There is always a return value for every method to indicate success or error. If success, it
returns 0, otherwise it returns an error code. The error message can be retrieved by the
function GetCalyxErrorMessage (Error Code, Error Message).
All the functions that retrieve data (functions starting with Get) will return a result in string
type if the functions were executed successfully and the result can be retrieved by the
GetResult() function.
For example:

iReturn = window.external.GetCalyxLoanData( 1); // to get loan data


if( iReturn == 0)
{
result = window.external.GetResult(); // get result of the function previously called
}
else
{
error = windows.external.GetCalyxErrorMessage( i); // get error message
}

In this topic

• Method names
• Samples
• Versions

Method names
When calling methods, keep in mind which methods are billable and which ones are not.
Most methods are except those that return fields give to your initial landing page.

Method Billable
GetCalyxLoanData() Yes
SetCalyxLoanData() Yes
SetCompanyStatusDocs() Yes
GetCompanyLoanID() No
SetCompanyLoanID() Yes
GetCalyxLoanGUID() No
GetCalyxApplicationName() No

27
Methods

Method Billable
GetCalyxApplicationVersion() No
GetCalyxApplicationBuild() No
GetCalyxApplicationUpdateVersions() No

Calyx counts your billable transactions by the number of Point Loan GUIDs (unique
physical Point files) on which you call billable methods. Once you call any billable method
on a Point file, that Point Loan GUID will be considered a billable transaction, so you can
call other billable methods on that Point file without incurring additional transaction fees (if
done within the time-frame specified in the contract).

Note

Unsuccessful method calls are not billable.

To easily reconcile transactions easily with Calyx, the following actions are recommended:
• Whenever you call a billable method on a Point file, make sure you also call
SetCompanyLoanID() if that Point file doesn't already have a Loan ID stored in it.
In doing so, Calyx will be able to echo back to you your own Loan ID in the
monthly billable transactions report we send you.
• Whenever you call a billable method on a Point file, you might want to log the
Point Loan GUID involved. In doing so, you can easily reconcile the monthly
billable transactions report we send you, as we count billable transactions by the
Point Loan GUIDs on which you call billable methods.
GetResult()
Return Value
GetResult() returns the result of the previously called function if its return value
was zero. The value will be returned in string type.
Comments
• Call this function right after the function for which the caller wants to get the
result and before any other functions get called.
• Call this function only when the previous function has a return value of zero.

28 CalyxSoftware
Method names

GetCalyxLoanData(format)
Parameters

Name In/Out Type Description


format Input Integer Receive loan data in the specified format:
• 2: Fannie Mae DU 3.2
• 3: Fannie Mae DU 3.0
• 6: Calyx Closing 2.4
• 7: Calyx Closing 2.6**
**(Available in Point 7.3)
• 8: Calyx Closing 2.6 with TRID extensions

Return value

Code Message Description


0 [Empty String] The data was retrieved successfully.
1 Invalid data format type The indicated format type is not valid or no
longer supported.
2 Failed to retrieve loan data Internal error.

Comments
• This function is to capture the open Point file as a single string in the specified
format.
• You are required to implement this function for at least one of your pages in
order to make sure that the transactions really occur via the WebConnect
interfaces.
• You are required to implement this function meaningfully on your website, to
ensure that your WebConnect interface is functional to the end user.
• End of life (EOL) data formats described in the versions section of this
document are still available from this function but should not be used for new
implementations and should be phased out of existing implementations. The
end of life data formats might be removed in the future.

WebConnect Integration Guide 29


Methods

SetCalyxLoanData(loandata)
Parameters

Name In/Out Type Description


loandata Input String XML string with data to be updated in the currently open
Point file. The data format of loandata is automatically
detected from loandata.
• CALYX CLOSING 2.6 data format is identified by:
– Root element: //LOAN/
– //LOAN/_APPLICATION/_DATA_INFORMATION
/DATA_VERSION[@_Name="CalyxDataFormat"]/
@_Number="CalyxClosing"
– //LOAN/@CalyxVersionIdentifier=“2.6”
• (Additional data formats or versions of existing data
formats might be added in the future.)

Return value

Code Message Description


0 [Empty String] The data was updated successfully.
11 Invalid data format The data format is incorrect or cannot be read.
12 Primary SSN does not match When the primary SSN of Point file is not blank
and the SSN does not exist in the data.
13 Updating the loan data was denied by The user doesn’t accept the update
the user
14 Failed to update the loan data Internal error
91 The currently open Point file is read-only. By Point security setting, the current Point file is
open as read-only mode. You cannot update any
data to the Point file.

Comments
• It is possible to do the update only when the primary Social Security Number
(SSN) in the Point file is blank or the SSN exists in data and the user accepts

30 CalyxSoftware
Method names

the changes. The user is prompted to accept the update with the following
dialog box whenever this method is called:

• For single-occurrence fields (for example, Loan Amount), the values in the
string are overlaid into the Point file. Accordingly, fields that are not included in
the string are left untouched in the Point file.
• For multiple-occurrence fields (for example, Liabilities), the items in Point are
first removed, then replaced by the items in the string. The following sections,
among others, are considered as multiple-occurrence. See the element
headers in the mapping spreadsheet for more detail.
– ASSET
– LIABILITY
– REO_PROPERTY
– EMPLOYER
– BORROWER/_RESIDENCE
– HMDA_RACE/@_Type
• Point will automatically re-calculate all of the necessary values following
updated data (if needed).
• The description for the loandata parameter for the CALYX CLOSING 2.6 data
format from above, repeated here, is a concise statement of how the CALYX
CLOSING 2.6 data format is automatically detected. In simpler terms, for the
data format to be identified as CALYX CLOSING 2.6, the root element in the
XML must be //LOAN/, the DATA_VERSION element for
_Name=“CalyxDataFormat” must have _Number=“CalyxClosing” and the
version of the format, CalyxVersionIdentifier, must be“2.6”.
CALYX CLOSING 2.6 data format is identified by:
– Root element: //LOAN/

WebConnect Integration Guide 31


Methods

– //LOAN/_APPLICATION/_DATA_INFORMATION
/DATA_VERSION[@_Name="CalyxDataFormat"]/
@_Number="CalyxClosing"
– //LOAN/@CalyxVersionIdentifier=“2.6”
SetCompanyStatusDocs(docdata)
Parameters

Name In/Out Type Description


docdata Output String XML string of the documents and statuses that you want to
update in the currently open Point file.

Return value

Code Message Description


0 [Empty String] The data was updated successfully.
41 XML is in invalid format. Point can’t retrieve the data from the XML
42 Failed to set the documents and statuses Internal error.
91 The currently open Point file is read-only. By Point security setting, the current Point file is
open as read-only mode. You can not update
any data to the Point file.

Comments
• This function accepts a Calyx-defined XML string to update statuses and
documents in the currently open Point file. The new values are “overlaid” into
the Point file, so items not included in the XML string are left untouched in the
Point file.
• Point will use _ID in STATUS to determine if new values are overlaid or
appended.
• Attribute _DateTime values must end with Z.
• _DateTime="2001-08-03T18:12:51Z" with indicating the UTC (UTC+0) time
zone. Time zone offsets are not allowed after the “Z” since they are
ignored. If the Z is missing, the time is set as a local time which is
ambiguous when the loan file is interpreted in different time zones.
Date and time should always be exchanged in UTC with the client
application applying the local time adjustment at display time based on
the user’s time zone.
• The document file format will accept PDF, HTML, and TXT.

Note

PDF should be encoded with Base64.

• Sample XML string.

32 CalyxSoftware
Method names

<!ELEMENT STATUS_DOCS (STATUS*)>


<!ATTLIST STATUS_DOCS
CompanyLoanID CDATA #IMPLIED
>
<!ELEMENT STATUS (EMBEDDED_FILE)>
<!ATTLIST STATUS
_Name CDATA #IMPLIED
_Results CDATA #IMPLIED
_DateTime CDATA #IMPLIED
_ID CDATA #IMPLIED
_DocAttached (Y | N) #IMPLIED
>
<!ELEMENT EMBEDDED_FILE (DOCUMENT)>
<!ATTLIST EMBEDDED_FILE
_Type CDATA #IMPLIED
_EncodingType CDATA #IMPLIED
_Description CDATA #IMPLIED
>
<!ELEMENT DOCUMENT ANY>

<?xml version="1.0" encoding="UTF-8"?>


<STATUS_DOCS CompanyLoanID="123456789">
<STATUS _ID="LOCK1234" _Name="Lock Confirmation" _Results="Lock extended" _DateTime="2001-
08-03T18:12:51Z" _DocAttached="Y">
<EMBEDDED_FILE _Type="PDF" _EncodingType="Base64" _Description="Confirmation Letter">
<DOCUMENT>base64 file data</DOCUMENT>
</EMBEDDED_FILE>
</STATUS>
<STATUS _ID="TITLE1234" _Name="Title" _Results="Ordered/Not Received" _DateTime="2001-08-
03T18:12:51Z" _DocAttached="N"/>
<STATUS _ID="MI1234" _Name="MI" _Results="Received" _DateTime="2001-08-03T18:12:51Z"
_DocAttached="Y">
<EMBEDDED_FILE _Type="TEXT" _EncodingType="CDATA" _Description="Title Letter">
<DOCUMENT><![CDATA[.... ]]></DOCUMENT>
</EMBEDDED_FILE>
</STATUS>
</STATUS_DOCS>

WebConnect Statuses and Documents


The argument, “docdata” in SetCompanyStatusDocs(docdata) represents an XML string
that includes all the status and document information. This topic provides an explanation
of the attributes that are included in “docdata” that is sent to Point with
SetCompanyStatusDocs, based on the sample XML above.
<STATUS_DOCS CompanyLoanID="123456789">
Include the Loan ID with the xml sent to Point to insure that the statuses and
documents are not sent to the wrong Point data file. The Calyx WebConnect SDK
sample test site requires that the Loan ID in the status xml match the Loan ID
already in Point before statuses or documents can be set in Point.

WebConnect Integration Guide 33


Methods

<STATUS _ID="LOCK1234"
The status ID is determined by your system, not by Calyx, and can be set to any
string. If on a second visit to the website, a status or document has the same
status ID as on the first visit, then that status or document will be replaced by the
new information. If on a second visit, the website creates a new status ID for the
new status/document information, then it will leave the previous statuses/docs in
Point and add new statuses/docs to the list. This allows your website to either
update an existing document by replacing it or simply add the updated document
as an additional updated version. It is usually recommended that prior statuses
not be overwritten so that the list of statuses will preserve a record of what
happened with the loan and preserves when the user’s visits occurred.
_Name and _Results
The Name attribute is for a name of the status or document and the Results
attribute is the actual status or purpose of the status or document. A description is
a separate attribute for each document. These attributes are defined by the
interface company and they fill in the corresponding columns on the Profile screen
in Point.
DateTime="2001-08-03T18:12:51Z"
The intent of this date and time is to display the website server’s time when a
status or document was updated. Point assumes the time format is in Coordinated
Universal Time (UTC) as Zero Meridian time zone. So, the local servers time
should be converted to the Zero Meridian time and the Z added to indicate this
when the status or document is sent to Point. Then when Point receives the time
Point converts to the local user’s time zone. In this way the time will reflect correct
times for when the statuses or documents changed on the website. If the Z is
missing on the end of the time string, Point will display it as is, which will usually
be incorrect for the user’s time zone. Refer to question Step 14 in FAQs, on
page 53, for more clarification on the date/time format.
GetCompanyLoanID()
Parameters
No.
Return value

Code Message Description


0 [Empty String] The data was retrieved successfully.
51 Failed to get the company loan id Internal error.

Comments
• This function returns your Loan ID that was set in the open Point file by the
function, SetCompanyLoanID.
• This is passed to you at the time of initial URL launch.

34 CalyxSoftware
Method names

SetCompanyLoanID(companyloanid)
Parameters

Name In/Out Type Description


companyloanid Input String The Loan ID that you want to set for this loan.

Return value

Code Message Description


0 [Empty String] The data was set successfully.
61 Failed to set the company loan id Internal error.
91 The currently open Point file is read-only. By Point security setting, the current Point file is
open as read-only mode. You can not update
any data to the Point file.

Comments
• This function accepts an alphanumeric string to set the Loan ID in the
currently open Point file.
• It is important to set this as soon as a new number is assigned, so subsequent
launches of the website are able to reference it.
• The Loan ID will be passed when the website is launched. It also can be
retrieved anytime by calling the function GetCompanyLoanID.
• It is recommended that you implement this function on your website.
GetCalyxLoanGUID()
Parameters
No.
Return value

Code Message Description


0 [Empty String] The data was retrieved successfully.
71 Failed to get the loan GUID Internal error.

Comments
• This function returns the Calyx Loan GUID of the currently open Point file.
• The Calyx Loan GUID is passed to you at the time of initial URL launch.
• Calyx will be using the Calyx Loan GUID to count the number of loans
transacted for the billing; the GUID will be unique for each physical Point file.

WebConnect Integration Guide 35


Methods

GetCalyxErrorMessage(code)
Parameters

Name In/Out Type Description


Code Input Integer The error code that was returned from the methods called.

Return value
This function returns a string of error message(s) that correspond to the input
code with string type.
Comments
The error messages returned by this might not be suitable to display on your
website since it contains minimal information. In this case, you will need to
handle the error case(s) properly by the error code.
GetCalyxApplicationName()
Parameters
No.
Return value

Code Message Description


0 [Empty String] The data was retrieved successfully.
81 Failed to get the application name. Internal error

Results (via GetResults())

Code Message Description


String Application name. The value Point is currently
the only application using WebConnect. Other
applications might be added in the future.

Comments
• This function returns the name of the Calyx application that provides the
WebConnect browser.
• Calyx might extend the functions available from the WebConnect interface
within a Calyx application in the future. The application name is one of the
factors that determines what functionality is available.
GetCalyxApplicationVersion()
Parameters
No.

36 CalyxSoftware
Method names

Return value

Code Message Description


0 [Empty String] The data was retrieved successfully.
81 Failed to get the application version. Internal error.

Results (via GetResults())

Code Message Description


String Application version, for example, “7.3”, “7.2”,
“7.1”, etc.

Comments
• This function returns the version of the Calyx application that provides the
WebConnect browser.
• Calyx might extend the functions available from the WebConnect interface in
the future. The application version is one of the factors that determines what
functionality is available.
• This function is most useful for displaying the version to a user. The easiest
way to test for a minimum version is to use GetCalyxApplicationBuild().

Important

The version used by the Point Application is an alphanumeric string, not a


number. Make sure your website is looking for a string for this method
call.

GetCalyxApplicationBuild()
Parameters
No.
Return value

Code Message Description


0 [Empty String] The data was retrieved successfully.
81 Failed to get the application version. Internal error

Results (via GetResults())

Code Message Description


String Application build, for example, 785.
Point uses numeric build numbers that increase
incrementally with each build.

Comments
• This function returns the build of the Calyx Application providing the
WebConnect browser.

WebConnect Integration Guide 37


Methods

• Calyx might extend the functions available from the WebConnect interface in
the future. The application build is one of the factors in determining what
functionality is available.
• This function is the easiest way to test for a minimum version. Refer to
Versions, on page 44, for code samples.
GetCalyxApplicationUpdateVersions()
Parameters
No.
Return value

Code Message Description


0 [Empty String] The data was retrieved successfully.
81 Failed to get the application version. Internal error

Results (via GetResults())

Code Message Description


String Application update versions, for example,
I-Update 34; Possible future component
update versions.
Semi-colon space separated list of
component update versions. Currently the
only component update version is I-Update.

Comments
• This function returns the semi-colon space, that is, “; “, separated list of
component update versions of the Calyx application that provide the
WebConnect browser.
• You can omit the semi-colon space, “; “, when there is only one component
update version.
• I-Update is currently the only component in Point with an update version.
Calyx might add update versions for new components in the future.

Samples
The following sample shows how to implement the server-side code with an example. The
sample HTML site has three buttons:
• Get Loan Data retrieves the loan data from the currently open Point file and sets
the Loan ID into the Point file.
• Set Loan Data updates the loan data that can be modified on screen into the
Point file.

38 CalyxSoftware
Samples

• Get Other Info captures the current Point file GUID.

Note

The simplified XML format that the sample uses handles only a small
portion of the entire MISMO.

The three buttons are defined in HTML.

<input type="button" name="getdata" value="Get Loan Data" onclick="getdata_onclick()">


<input type="button" name="setdata" value="Set Loan Data" onclick="setdata_onclick()">
<input type="button" name="getinfo" value="Get Other Info" onclick="getinfo_onclick()">

WebConnect Integration Guide 39


Methods

Get Loan Data


The Get Loan Data button executes the following function to display the retrieved
loan data on the text box.

function getdata_onclick()
{
var companyid = "123456789";
try
{
i = window.external.GetCalyxLoanData(7); // Get Point data in Calyx Closing 2.6 format.
if( i == 0)
{
point_file.value = window.external.GetResult();
window.external.SetCompanyLoanID( companyid);
}
else
{
alert( window.external.GetCalyxErrorMessage( i));
}
}
catch( e)
{
alert( "Calyx WebConnect methods are NOT available.");
}
}

The code should catch the exception to check the availability of WebConnect
method. The WebConnect method is only defined when the sites are browsed in
the WebConnect browser.

function getdata_onclick()
{
try
{
...
}
catch( e)
{
alert( "Calyx WebConnect methods are NOT available.");
}
}

If GetCalyxLoanData is successfully executed returning 0, GetResult will return


the result string.

40 CalyxSoftware
Samples

i = window.external.GetCalyxLoanData(7); // Get Point data in Calyx Closing 2.6 format.


if( i == 0)
{
point_file.value = window.external.GetResult();
...
}

After you receive Point loan data, you might need to set a specific Loan ID to the
Point file to establish the connection between the loan data stored on your system
and the loan data in the Point file.

window.external.SetCompanyLoanID( companyid);

If GetCalyxLoanData returns an error code, you will need to process the error
either by the code or the error message, which can be retrieved from the function
GetCalyxErrorMessage.

i = window.external.GetCalyxLoanData( 1);
if( i == 0)
{
...
}
else
{
alert( window.external.GetCalyxErrorMessage( i));
}

Set Loan Data


The Set Loan Data button will execute the following function to update the
modified loan data into Point.

WebConnect Integration Guide 41


Methods

function setdata_onclick()
{
var companyid = "123456789";
var v = ““;
try
{
if( window.external.GetCompanyLoanID() == 0)
{
v = window.external.GetResult();
}
if( v == companyid || v == "")
{
i = window.external.SetCalyxLoanData( point_file.value);
if( i == 0)
alert( "Point file has been successfully updated.");
else
alert( window.external.GetCalyxErrorMessage( i));
}
else
{
alert( "The Company ID in Point file is different from the id of the loan you are trying to update.");
}
}
catch( e)
{
alert( "Calyx WebConnect methods are NOT available.");
}
}

Before updating the loan data, you should try to capture the Loan ID from the
Point file; if it is not blank and is not the same as the one in your system, the
update should not proceed.

var v = " ";


if( window.external.GetCompanyLoanID() == 0)
{
v = window.external.GetResult();
}

if( v == companyid || v == "")


{
...
}
else
{
alert( "The Company ID in Point file is different from the id of the loan you are trying to update.");
}

42 CalyxSoftware
Samples

To see how SetCalyxLoanData works in the sample HTML, receive the loan data
by clicking Get Loan Data. Then you can modify values in the XML and click Set
Loan Data.

Click Yes in response to the loan confirmation.

The modified data in the XML is then updated to the Point file.

Get Other Info


The Get Other Info button code:

WebConnect Integration Guide 43


Methods

function getinfo_onclick()
{
var guid = "";
try
{
if( window.external.GetCalyxLoanGUID() == 0)
{
guid = window.external.GetResult();
}
alert( “GUID of the currently open Point file: " + guid);
}
catch( e)
{
alert( "Point WebConnect methods are NOT available.");
}
}

GetCalyxApplicationBuild()
GetCalyxApplicationBuild() is an easy way to check for a minimum version to
determine what functionality is supported.

function ShowGetCalyxApplicationBuild() {
var errorcode;
try {
errorcode = window.external.GetCalyxApplicationBuild();
if ( errorcode == 0 ) {
appbuild = window.external.GetResult();
alert( “Calyx application build: " + appbuild);
// check for minimum functionality here by comparing appbuild with the minimum build number
that supports the desired functionality, e.g. if (appbuild > 1095) {…Do some neat functionality…}
}
}
catch( e )
{
alert( "Point WebConnect methods are NOT available.");
}
}

Versions
The WebConnect interface works with multiple Point versions. You can include your
interface in all prior Point versions that are supported in the I-Update that has that type of
interface.
To exclude your interface from a particular Point release, verify that the
GetCalyxApplicationName() setting is Point and GetCalyxApplicationBuild() is greater (or
less) than the desired build number. To deny the interface for some Point versions, issue
an appropriate message to the user on your web page. For example:

44 CalyxSoftware
Versions

Solar Bank of Odessa works best with Point8.0 and later. Upgrade to Point 8.0 or later
for the best experience and quickly lead your company to greater profits!

GetCalyxApplicationName() GetCalyxApplicationBuild() GetCalyxApplicationVersion()


Build Version
Point 1095 7.1
Point 1146 7.2
Point >1228 7.3
Point >1293 7.4
Point >1376 7.5
Point >1416 7.6
Point >1467 8.0
Point >1472 8.0 SP1
Point >1481 8.0 SP2
Point >1493 8.1
Point >1507 9.0
Point >1514 9.0 SP1

Point Version Data Format Support


Closing 2.4 Calyx Calyx
DU 3.0/3.2 MA 2.3.1 Calyx Data (export only) Closing 2.4 Closing 2.6
7.1 Y Y Y Y N N
7.2 Y EOL EOL EOL Y N
7.3 Y EOL EOL EOL EOL Y
7.4 Y EOL EOL EOL EOL Y
7.5 Y EOL EOL EOL EOL Y
7.6 Y EOL EOL EOL EOL Y
8.0 Y EOL EOL EOL EOL Y
8.0 SP1 Y EOL EOL EOL EOL Y
8.0 SP2 Y EOL EOL EOL EOL Y
8.1 Y EOL EOL EOL EOL Y
9.0 Y EOL EOL EOL EOL Y
9.0 SP1 Y EOL EOL EOL EOL Y

Important

End of Life (EOL) data formats do not have bug fixes or enhancements.
Therefore, you should not use EOL data formats for new
implementations and should phase them out at your earliest
convenience. Refer to previous versions of the WebConnect SDK if you
must use an earlier version of an EOL data format.

WebConnect Integration Guide 45


Data format notes 7
Special behaviors

Attention

Supported fields are subject to change in future versions of Point.


To review the fields that Point supports, refer to the data format mapping
spreadsheet that is provided with this guide.

• The mapping spreadsheet contains LDD names in parentheses, for example,


(Joint Asset Borrower ID). These names express associations between the data,
such as, the liabilities or assets associated with a borrower, matching of liabilities,
etc.
These associations are expressed by using XML Identifiers (xs:ID) and XML
Identifier Reference (xs:IDREF, xs:IDREFS) that are not included in the LDD but
are defined in the DTD.
• Point does not require FirstName or LastName; this deviates from the DTD
requirement.
• JointAssetBorrowerID pairs borrowers and co-borrowers that belong together in
either borrower or co-borrower files.
• When exporting from Point:
– Borrowers without Social Security Numbers are exported; which deviates
from the DTD requirement.
– All data available in Point is exported.
– XML exports from Point are based on XML schema. XML Schema provides
many benefits that make DTD’s obsolete. For example, a DTD is not a valid
XML document. XML and XML schema can be viewed in many applications
such as web browsers, XML editors, and other prevalent tools. However,
relatively few tools allow the viewing of DTDs. Using XML schema generates
these namespace declarations within the XML:
<LOAN_APPLICATION xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
CalyxVersionIdentifier="2.6">
This deviates from the DTD requirement. If you validate against the DTD, edit
your DTD to accept these name space declarations.
• When importing to Point:
– If imported borrower data matches an existing borrower in Point (based on
their Social Security Number), the imported data overwrites the matching
data. Data fields that are not in the imported borrower data are unchanged
and the sequence of borrowers in Point is unchanged. However, if
RESIDENCE or EMPLOYER information is included in the imported borrower
data, the existing data of these multiple-occurrence items is replaced by the
imported data.
– If imported borrower data does not match an existing borrower in Point (based
on their Social Security Number), the imported borrower populates an empty

47
Data format notes

borrower file in Point in the sequence that they are received as borrower or
co-borrower based on PrintPositionType. New co-borrower files are created
as needed and borrower is considered empty if Social Security Number field
is missing. If PrintPositionType is missing, the borrower will not be imported.
– Borrowers without Social Security Numbers are not imported.
– Borrowers in Point with Social Security Numbers are never deleted.
– BorrowerID must be populated to associate assets, liabilities, and REOs with
the borrower.

48 CalyxSoftware
Interface updates 8
Your WebConnect interface is easily added by distributing your profile files in Point. The
profile distribution is done by Calyx’s I-Update process.
I-Update is an automatic process that was designed for adding and deleting interface
service providers and lenders independently from Point releases. You can also make
profile updates during I-Updates, however, changes to the underlying WebConnect
platform code is not possible.
Calyx maintains the I-Update servers and whenever Point is launched, it checks for
updates. When a new update is available, Point automatically downloads the update.
When Point is closed, the update is installed. Point users can see the updated lists in the
menu the next time they launch Point.
Currently, the I-Update release occurs every month. Based on recent statistics, after Calyx
has released a new update, it takes roughly two weeks for most active Point users to
receive the update. The I-Update release schedule is located at http://calyxsupport.com/
interface.
Refer to the WebConnect Project Management Guide for further details about I-Update
timelines.

49
Transaction registration 9
To ensure that accurate transaction billing occurs each month, Point notifies the Calyx
Transaction Management Server (TMS) when a Point user orders a report. The following
fields are reported:
• Point Version (for example, 8.0)
• Point Account ID (for example, 1234567MS)
• Company Account ID (for example, 1234567CC)
• Company Server Name (for example, (www.abcmortgage.com)
• Company Server IP Addresses
• Client IP Addresses
• Point File GUID and Request GUID
• Report ID
• Product Name and Product Type
• Request Action and Response Status
Because TMS is critical to our billing, if the server cannot be reached for any reason, Point
will display the following message:

51
FAQs 1
This information can assist you in your development of the DirectConnect interface. Refer
to Product assistance and support, on page vii, for further assistance.
1 What are the general formatting rules for data types within Calyx MISMO?
Date
The MISMO preferred format is YYYY-MM-DD for a date. A month is YYYY-MM
and a year is YYYY.
Examples:
– May 4th, 2006: 2006-05-04
– May 2006: 2006-05
– 2006: 2006
– December 25th, 2007: 2007-12-25
Time
Time is in 24 hour format, i.e., HH:MM:SS. All fields and digits are required,
including leading zeros (0). There is no time zone. Range: 00:00:00 to 23:59:59
Format is XML Schema time datatype.
Examples:
– 12:28 AM: 00:28:00
– 4:49 AM: 04:49:00
– 2:32:01 PM: 14:32:01
– 8:00 PM:: 20:00:00
– 11:59:59 PM: 23:59:59
Number (money, rates, etc.)
There are no restrictions on the number of decimal places.
– 5.000 can be sent as 5, 5.0, or 5.0000
Zip Code
– 5 or 9 digit with or without a hyphen (-)
– 95120
– 95120-3364
– 951203364
2 Can Point accept an entirely empty node? For example,
<CONSTRUCTION_REFINANCE_DATA/>. It would be completely empty; no
elements or attributes.
Empty elements without child elements or attributes are ignored. It's best MISMO
practice to not send empty elements.
3 Can we send you elements that are included in the MISMO DTD, but not listed in the
MISMO LDD? For example, /LOAN_APPLICATION/BORROWER/BorrowerID.
We send you and you have to send us BorrowerID when you want to do things like
match liabilities to borrowers. MISMO does not include the ID fields in their Logical
Data Dictionaries (LDD).
4 How will Calyx handle a code that is sent over that is not available in its options list?
For example, for Contact Point, MISMO provides the contact type of Other; however,

53
FAQs

the Calyx documentation does not indicate that an Other contact type is available. If
we send Other as a contact point type to Calyx, what will happen?
The entire CONTACT_POINT element containing the unsupported value is ignored.
5 How does Calyx handle more than the expected number of occurrence being passed
to it? For example, if Calyx only expects 0..12 occurrence, and we send 13 values,
what will Calyx do? Error off? Only process the first 12? If only processing the first 12,
what order should the values be sent in? Or, can Calyx process all 13, but only display
the first 12?
The first occurrences are accepted, up to the supported number of occurrences.
Subsequent occurrences are ignored. In general, sending more elements than Calyx
supports should be avoided since most elements contribute to some calculation.
When your system uses more elements in a calculation than Calyx supports then the
calculated values in the systems will differ.
6 Calyx's documentation indicates that within certain collections only X number of
certain types of values should be received. For example, in Liabilities, 0..2 Job
Related Expenses should be sent. What happens if 3 are sent to Point? Would all 3
error off? Would all 3 be processed? Would only 2 be processed? If so, which 2?
The first occurrences are accepted, up to the supported number of occurrences.
Subsequent occurrences are ignored.
In general, sending more elements than Calyx supports should be avoided since most
elements contribute to some calculation. When the company’s system uses more
elements in a calculation than Calyx supports then the calculated values in the
systems will differ.
7 Notes found in the mapping spreadsheet indicate that null values should not be sent.
For elements, this makes sense. What about for attributes?
MISMO does not support null values. Parameter="" is an empty string which is
different from a null value. If the attribute is present and supported, its value will be
updated into Point.
8 How does Calyx handle null values being passed in? Does it ignore the null value? Or,
if there is data already present in the Calyx system, does it delete the data?
MISMO does not support null values. Parameter="" is an empty string which is
different from a null value. If the attribute is present and supported, its value will be
updated into Point, including the empty string which will overwrite the existing value in
Point.
9 Are there any rules for number types? When completing the MISMO mortgage
application extract for Fannie Mae, there were instances where certain
numbers\values had to be sent over with a given format. For example, a given number
of decimal places where required.
There are no restrictions on the number of decimal places.
5.000 can be sent as 5, 5.0, 5.0000
10 Are we able to test our XML through the Sample Interface application? If our XML is
malformed per Calyx standards or errors off, are we able to capture those error
messages? If we are not able to test through the Sample Interface application, can we
send Calyx an XML file and have them process it for us?
The Sample Interface application is an excellent way to test the XML export and
import to Calyx.

54 CalyxSoftware
FAQs

You can easily start testing with the Sample Interface application by taking the
following actions:
• Enter data in Point
• Launch the Sample Interface site
• Click GetCalyxLoanData to get and review the XML exported by Point
• Modify the XML as desired or cut and paste XML into the Sample Interface site
• Click SetCalyxLoanData to import the modified XML back into Point
• Observe Loan Data Import updated fields dialog
• Close the Sample Interface site
• See the updated values in Point.
You can also validate your XML against the schema for that data format provided
in the WebConnect SDK using a tool that validates XML like XMLSpy or many
others.
11 How do you associate borrowers and co-borrowers when more than one is present?
These determine how borrowers appear on 1003 loan applications (*.brw or *.cb files):
• JointAssetBorrowerID
Borrowers appearing on the same 1003 loan application (*.brw or *.cb file) have
the attribute JointAssetBorrowerID referencing (identical value) the BorrowerID of
the other borrower on the 1003 (for a joint application).
• PrintPositionType
PrintPositionType determines whether the borrower appears on the left
(Borrower) or right (Co-Borrower) of the 1003 loan application.
• 1003 loan application order
Imported borrowers that do not match existing borrowers in the Point file are
assigned to 1003 applications in the order of the <BORROWER> elements in the
imported XML.
12 What are the string limits for Item, Results, Date, and Document in Point?
• Item – Unlimited in the file, display limited to 259 characters
• Results - Unlimited in the file, display limited to 259 characters
• Date – Limited to valid dates.

Note

When statuses and documents are set to Point, there is no limit on how
much data can be sent to be saved with the local Point file. However
Point’s display only allows you to see a width of 259 characters (done by
the user expanding the columns with the mouse). If a long status or
document is read by the website after being saved in Point, all the data is
available with the Get data function. Only the display in Point is limited.

• Document - Unlimited in the file, display limited to 259 characters


13 If there is not a co-borrower on the Point file, and the user does not select the Not-
Jointly check box on pg 3 of the Loan Application, will MISMO still include Jointly?
Yes. Point will send exactly what is entered in the Point file.

WebConnect Integration Guide 55


FAQs

14 When setting statuses to Point, are dates converted to the local system time zone?
Point converts times specified in UTC (Zero Meridian) to local time. Any offsets to
UTC are ignored.
Example:
2006-09-29T18:41:59Z
A time without a UTC specification is considered local time and displayed without
conversion.
Example:
2006-09-29T18:41:59
A good practice is for the web server to specify the time in the UTC Zero Meridian time
format so that the user sees it in their local time zone and not the time zone of the web
server. For more information about UTC time, see
http://en.wikipedia.org/wiki/Coordinated_Universal_Time.
15 How can I prevent the same browser session from being used for different loans?
The browser session is associated with the Point process that provides the browser
window. Consequently, a user can submit a loan to your site, return to Point and select
another loan and then submit that different loan to your site using the same browser
session. You can force a new session for each loan submission to your site by using
the JavaScript window.onUnload event when the user closes the root WebConnect
browser to clear the session.

56 CalyxSoftware
Index
A
assistance vii

B
billing 51

C
contacts vii

F
FAQs 53

P
Point support vii
product support vii

R
registering transactions 51
resources vii

S
Sales support vii
support vii

T
Transaction Management Server 51
transaction registration 51

57

You might also like