Extension: MSP - quandis/qbo3-Documentation GitHub Wiki
The qbo.MSP
plugin enables communication with BFKS's MSP platform.
- Service configuration for MSP endpoint
- Development
- FlexAccountView
- LoanActivity
- LoanSearch
- PropertyProfile
- PropertyUpdate
- BorrowerContact
- MortgageHistory
- RecurringPaymentDrafting
- MilitaryServiceRelief
- MilitaryServiceReliefUpdate
To use this plugin you will need to create a service entry that invokes the MSP entitled service.
For this example, we will invoke MSP's FlexAccountView endpoint
From Design > Configuration > Modules, choose a module to extend with a Service entry, such as Loan. From the Services tab, add a service:
- Name: MSPFAV
- Return Type: XmlReader
- Plugin Type: qbo.MSP.MSP, qbo.MSP
- Endpoint: Soap Action based on endpoints schema
FlexAccountView/v2.15/FlexAccountViewRead
- RequestTransform: XSLT to create the outbound SOAP request; e.g.:
Templates/Mortgage/MSP/MSP.FlexAccountViewRead.Request.xslt?Element=LoanActiveStatusFlag,LoanCreditQualityPreviousCode,CurrentPaymentOutstandingBalance
- ResponseTransform: XSLT to transform the results from MSP
Templates/Mortgage/MSP/MSP.QBO.Response.xslt
Once configured, you may call Loan/MSPFAV?Output=Xml
Services configured for this plugin allows for the usage of a 'Mock' parameter. When 'Mock' is defined, dummy information gets substituted for certain parts of the request, and after the request is built, the relative path value inside of Mock is used to find an xml file to return as the response instead. Serializing to JSON and everything else happens after this point.
The files to use for this are sample responses from MSP. Please feel free to add more to the project under Templates/Samples/MSP, and during a build process these files should propagate to the server for this usage.
An example value of 'Mock' using a file that exists in the project now would be Templates/Samples/MSP/FAV.xml
Configured service entry in QBO as Loan/MSPMSPFAV with:
- Endpoint - FlexAccountView/v2.15/FlexAccountViewRead
- RequestTransform - Templates/Mortgage/MSP/MSP.FlexAccountViewRead.Request.xslt
- RequestTransform Parameters - Optional Element param which can be overridden by supplying
Element
when invoking the endpoint - ResponseTransform - Templates/Mortgage/MSP/MSP.QBO.Response.xslt
The Element node in RequestTransform gives you the ability to create custom views to extract different elements from MSP. A service config entry can be created for MSPFAVDetails which would have one set of elements listed giving you a detailed view into the Loan. An additional service config entry could be configured for MSPFAVDefault which would give you default related elements. This give you the ability to control the elements being accessed by different roles.
<ConfigurationEntryItem>
<ConfigurationEntry>MSPFAV</ConfigurationEntry>
<Source>Loan.config</Source>
<ConfigurationType>qbo.Application.Configuration.ServiceCollection</ConfigurationType>
<ConfigurationKey>MSPFAV</ConfigurationKey>
<ConfigurationXml>
<Service Name="MSPFAV"
Type="qbo.MSP.MSP, qbo.MSP, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
ReturnType="XmlReader"
RequestTransform="Templates/Mortgage/MSP/MSP.FlexAccountViewRead.Request.xslt?Element=LoanActiveStatusFlag,LoanCreditQualityPreviousCode,LoanCurrentYearPaymentReceivedTable,LoanDischargeDate,LoanInterestInAdvanceCode,LoanLossReserveFlatAmount,LoanLossReservePercentage"
ResponseTransform="Templates/Mortgage/MSP/MSP.QBO.Response.xslt"
EndPoint="FlexAccountView/v2.15/FlexAccountViewRead"
Async="False"
RequireStream="False"
CompleteStep="False"
LogData="True"
Repeatable="OneActive"
AllowInheritance="True" />
</ConfigurationXml>
</ConfigurationEntryItem>
Parameter | Description | Required/Optional |
---|---|---|
Loan | Loan number | required |
Element | Elements submitted when invoking the endpoint will overwrite any default element listed in the service config Request Transform | optional |
ViewName | View configured previously in MSP which will return set of elements | optional |
POST /Mortgage/Loan.ashx/MSPFAV
Loan=123456789
&Element=CurrentPrincipalBalance
&Output=Xml
POST /Mortgage/Loan.ashx/MSPFAV
Loan=123456789
&Output=Xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tns="http://www.fnfis.com/services/Services-Common/FlexAccountView/2.15" xmlns:qbo="http://services.quandis.com/MSP/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<tns:FlexAccountViewRead>
<RequestContext>
<CorrelationId></CorrelationId>
<UserCompany>Acme</UserCompany>
<UserId>TestSystem</UserId>
<Credentials>
<MSPCredentialList>
<SystemId>TestSystem</SystemId>
<MSPCredential>
<ClientId>123</ClientId>
<MSPId>MWSTest</MSPId>
<RACFId>TestUserName</RACFId>
<RACFPassword>TestCredential</RACFPassword>
</MSPCredential>
</MSPCredentialList>
</Credentials>
<ApplicationId>123</ApplicationId>
<Provider>TestProvier</Provider>
<Locale>
<ISOCountryCode>US</ISOCountryCode>
<ISOLanguageCode>en</ISOLanguageCode>
</Locale>
<EchoRequestContextFlag>0</EchoRequestContextFlag>
</RequestContext>
<FlexAccountViewReadRq>
<RequestBody>
<ClientId>123</ClientId>
<LoanNumber>0000000123</LoanNumber>
<Element>CurrentPrincipalBalance</Element>
<Element>CurrentPaymentOutstandingBalance</Element>
</RequestBody>
</FlexAccountViewReadRq>
</tns:FlexAccountViewRead>
</soapenv:Body>
</soapenv:Envelope>
<?xml version="1.0" encoding="utf-8"?>
<LoanCollection>
<Results>
<ResponseHeader>
<Status>
<StatusCode>Success</StatusCode>
<ResultCode>0</ResultCode>
</Status>
</ResponseHeader>
<ResponseBody>
<ClientId>414</ClientId>
<LoanNumber>0000107481</LoanNumber>
<CurrentPrincipalBalance>8821.33</CurrentPrincipalBalance>
<CurrentPaymentOutstandingBalance>8581.64</CurrentPaymentOutstandingBalance>
</ResponseBody>
</Results>
</LoanCollection>
Configured service entry in QBO as Loan/MSPLoanActivity with:
- Endpoint - LoanActivity/v1.0/LoanActivityRead
- RequestTransform - Templates/Mortgage/MSP/MSP.LoanActivityRead.Request.xslt
- ResponseTransform - Templates/Mortgage/MSP/MSP.QBO.Response.xslt
<ConfigurationEntryItem>
<ConfigurationEntry>MSPLoanActivity</ConfigurationEntry>
<Source>Loan.config</Source>
<ConfigurationType>qbo.Application.Configuration.ServiceCollection</ConfigurationType>
<ConfigurationKey>MSPLoanActivity</ConfigurationKey>
<ConfigurationXml>
<Service Name="MSPLoanActivity"
Type="qbo.MSP.MSP, qbo.MSP, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
ReturnType="XmlReader"
RequestTransform="Templates/Mortgage/MSP/MSP.LoanActivityRead.Request.xslt"
ResponseTransform="Templates/Mortgage/MSP/MSP.QBO.Response.xslt"
EndPoint="LoanActivity/v1.0/LoanActivityRead"
Async="False"
RequireStream="False"
CompleteStep="False"
LogData="True"
Repeatable="OneActive"
AllowInheritance="True" />
</ConfigurationXml>
</ConfigurationEntryItem>
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
Loan | Loan number | required | |
Filters | Enumerated filter options. At maximum comma delimited list of 4 filters are allowed | optional | CustomerServiceActivity, CommentLogs, LetterWriterAndLossMitigation, Tasks, CollectionLogs |
POST /Mortgage/Loan.ashx/MSPLoanActivity
Loan=123456789
&Output=Xml
POST /Mortgage/Loan.ashx/MSPLoanActivity
Loan=123456789
&Filters=CustomerServiceActivity,CommentLogs
&Output=Xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.fnfis.com/services/Services-Common" xmlns:tns="http://www.fnfis.com/services/Services-Common/LoanActivityRead/1.0" xmlns:qbo="http://services.quandis.com/MSP/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns:LoanActivityRead>
<RequestContext>
<CorrelationId></CorrelationId>
<UserCompany>Acme</UserCompany>
<UserId>TestSystem</UserId>
<Credentials>
<MSPCredentialList>
<SystemId>TestSystem</SystemId>
<MSPCredential>
<ClientId>123</ClientId>
<MSPId>MWSTest</MSPId>
<RACFId>TestUserName</RACFId>
<RACFPassword>TestCredential</RACFPassword>
</MSPCredential>
</MSPCredentialList>
</Credentials>
<ApplicationId>123</ApplicationId>
<Provider>TestProvier</Provider>
<Locale>
<ISOCountryCode>US</ISOCountryCode>
<ISOLanguageCode>en</ISOLanguageCode>
</Locale>
<EchoRequestContextFlag>0</EchoRequestContextFlag>
</RequestContext>
<LoanActivityReadRq>
<RequestBody>
<ClientId>123</ClientId>
<LoanNumber>0000000123</LoanNumber>
</RequestBody>
</LoanActivityReadRq>
</ns:LoanActivityRead>
</soapenv:Body>
</soapenv:Envelope>
<?xml version="1.0" encoding="utf-8"?>
<LoanCollection>
<Results>
<ResponseHeader>
<Status>
<StatusCode>Success</StatusCode>
<ResultCode>0</ResultCode>
</Status>
</ResponseHeader>
<ResponseBody>
<ClientId>123</ClientId>
<LoanNumber>0000000123</LoanNumber>
<LoanActivity>
<ActivityType>LET</ActivityType>
<ActivityDate>2018-12-31</ActivityDate>
<ActivityUserID>***</ActivityUserID>
<CommentLogCode>YE018</CommentLogCode>
<ActivityDescriptions>
<ActivityDescription>A00 - ARMINDA O CERRUTO</ActivityDescription>
</ActivityDescriptions>
</LoanActivity>
<LoanActivity>
<ActivityType>LET</ActivityType>
<ActivityDate>2018-07-26</ActivityDate>
<ActivityUserID>NCI</ActivityUserID>
<CommentLogCode>ST799</CommentLogCode>
<ActivityDescriptions>
<ActivityDescription>001 - ARM Adjustment LTR 07/25/18</ActivityDescription>
</ActivityDescriptions>
</LoanActivity>
</ResponseBody>
</Results>
</LoanCollection>
Configured service entry in QBO as Loan/MSPLoanSearch with:
- Endpoint - LoanSearch/v3.04/LoanSearchRead
- RequestTransform - Templates/Mortgage/MSP/MSP.LoanSearchRead.Request.xslt?MultiClientSearchFlag=false&MaxReturnSize=25
- ResponseTransform - Templates/Mortgage/MSP/MSP.QBO.Response.xslt
RequestTransform can have optional parameters:
- MultiClientSearchFlag - Boolean flag to indicates if all all Client Numbers for the MSP customer are searched
- MaxReturnSize - Number of rows to return. Max size is 500
<ConfigurationEntryItem>
<ConfigurationEntry>MSPLoanSearchRequest</ConfigurationEntry>
<Source>Loan.config</Source>
<ConfigurationType>qbo.Application.Configuration.ServiceCollection</ConfigurationType>
<ConfigurationKey>MSPLoanSearchRequest</ConfigurationKey>
<ConfigurationXml>
<Service Name="MSPLoanSearchRequest"
Type="qbo.MSP.MSP, qbo.MSP, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
ReturnType="XmlReader"
RequestTransform="Templates/Mortgage/MSP/MSP.LoanSearchRead.Request.xslt?MultiClientSearchFlag=false&MaxReturnSize=25"
ResponseTransform="Templates/Mortgage/MSP/MSP.QBO.Response.xslt"
EndPoint="LoanSearch/v3.04/LoanSearchRead"
Async="False"
RequireStream="False"
CompleteStep="False"
LogData="True"
Repeatable="OneActive"
AllowInheritance="True" />
</ConfigurationXml>
</ConfigurationEntryItem>
The following categories can be used to search loans in MSP
- Borrower/CoBorrower
- Property/Mailing/REO Addresses
- Key Loan Identifiers
- Credit Card Information
Parameter | Search Category | Description | Required/Optional | Possible Values |
---|---|---|---|---|
BorrowerType | Borrower | Type of contact being searched | optional | Borrower, CoBorrower, EitherBorrower |
LastName | Borrower | Last name of borrower | optional | |
FirstName | Borrower | First name of borrower | optional | |
SSN | Borrower | Loan Search will not identify loans that have TIN as opposed to a SSN assigned (Max Len 16) | optional | |
AddressType | Address | Type of property searched | optional | Mailing, Property, REO_LossMitt, PropertyOrMailing |
Address | Address | Street number and street name portion of the property or mailing address | optional | |
City | Address | City name | optional | |
State | Address | State abbreviation | optional | |
PostalCode | Address | Address postal code | optional | |
Element | Key Identifier | Enumerated key field that will be used for searching | optional | LoanNumber, OldLoanNumber, PropertyTaxID,TaxServicerNumber, FHANumber, BankruptcyCaseNumber, PreExpandedLoanNumber, HELOCLoanNumber, HELOCBankAccountNumber, HazardPolicyNumber, InvestorLoanNumber, VALoanNumber, PMIGuarantyNumber, MERSMinNumber, HELOCLinkNumber, PhoneOrFaxNumber, EmailAddress |
Value | Key Identifier | Value to search for when Element Key is used | optional | |
CCNumber | Credit Card | Credit Card number search | optional |
POST /Mortgage/Loan.ashx/MSPLoanSearch
BorrowerType=Borrower
&LastName=SMITH
&Output=Xml
POST /Mortgage/Loan.ashx/MSPLoanSearch
BorrowerType=CoBorrower
&SSN=000112222
&Output=Xml
POST /Mortgage/Loan.ashx/MSPLoanSearch
AddressType=Property
&Address=Thomas Ave
&Output=Xml
POST /Mortgage/Loan.ashx/MSPLoanSearch
AddressType=Mailing
&Address=Thomas Ave
&City=Rancho Santa Margarita
&State=CA
&Output=Xml
POST /Mortgage/Loan.ashx/MSPLoanSearch
Element=LoanNumber
&Value=0000000123
&Output=Xml
POST /Mortgage/Loan.ashx/MSPLoanSearch
Element=PhoneOrFaxNumber
&Value=9495500000
&Output=Xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.fnfis.com/services/Services-Common" xmlns:tns="http://www.fnfis.com/services/Services-Common/LoanSearch/3.04" xmlns:qbo="http://services.quandis.com/MSP/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<tns:LoanSearchRead>
<RequestContext>
<CorrelationId></CorrelationId>
<UserCompany>Acme</UserCompany>
<UserId>TestSystem</UserId>
<Credentials>
<MSPCredentialList>
<SystemId>TestSystem</SystemId>
<MSPCredential>
<ClientId>123</ClientId>
<MSPId>MWSTest</MSPId>
<RACFId>TestUserName</RACFId>
<RACFPassword>TestCredential</RACFPassword>
</MSPCredential>
</MSPCredentialList>
</Credentials>
<ApplicationId>123</ApplicationId>
<Provider>TestProvier</Provider>
<Locale>
<ISOCountryCode>US</ISOCountryCode>
<ISOLanguageCode>en</ISOLanguageCode>
</Locale>
<EchoRequestContextFlag>0</EchoRequestContextFlag>
</RequestContext>
<LoanSearchReadRq>
<RequestBody>
<ClientId>123</ClientId>
<MultiClientSearchFlag>false</MultiClientSearchFlag>
<MaxReturnSize>25</MaxReturnSize>
<SearchCriteria>
<NameSearchInfo>
<BorrowerIndicator>Borrower</BorrowerIndicator>
<LastName>LASTY</LastName>
</NameSearchInfo>
</SearchCriteria>
</RequestBody>
</LoanSearchReadRq>
</tns:LoanSearchRead>
</soapenv:Body>
</soapenv:Envelope>
<?xml version="1.0" encoding="utf-8"?>
<LoanCollection>
<Results>
<ResponseHeader>
<Status>
<StatusCode>Success</StatusCode>
<ResultCode>0</ResultCode>
</Status>
</ResponseHeader>
<ResponseBody>
<RecordCount>2</RecordCount>
<LoanSearchResults>
<LoanSearchResult>
<ClientId>123</ClientId>
<LoanNumber>0000000123</LoanNumber>
<Name>
<BorrowerIndicator>Borrower</BorrowerIndicator>
<LastName>LASTY</LastName>
<FirstName>FIRSTY</FirstName>
<MiddleName>O</MiddleName>
</Name>
<Address>
<AddressType>Mailing</AddressType>
<StreetName>111 COLD STREET</StreetName>
<CityName>TACOMA</CityName>
<StateAbbreviation>WA</StateAbbreviation>
<PostalCode>98407</PostalCode>
</Address>
<Address>
<AddressType>Property</AddressType>
<StreetName>12345 DEEPWOOD CREEK DR</StreetName>
<CityName>OKLAHOMA CITY</CityName>
<StateAbbreviation>OK</StateAbbreviation>
<PostalCode>73142</PostalCode>
</Address>
</LoanSearchResult>
<LoanSearchResult>
<ClientId>123</ClientId>
<LoanNumber>0000000456</LoanNumber>
<Name>
<BorrowerIndicator>Borrower</BorrowerIndicator>
<LastName>LASTY</LastName>
<FirstName>RONALD</FirstName>
<MiddleName>Q</MiddleName>
</Name>
<Name>
<BorrowerIndicator>CoBorrower</BorrowerIndicator>
<LastName>BLAD</LastName>
<FirstName>OSCAR</FirstName>
</Name>
<Address>
<AddressType>Mailing</AddressType>
<StreetName>12545 SW HARVEST BERRY LNDG</StreetName>
<CityName>SPOKANE</CityName>
<StateAbbreviation>WA</StateAbbreviation>
<PostalCode>99207</PostalCode>
</Address>
<Address>
<AddressType>Property</AddressType>
<StreetName>4580 NARROWS RD N</StreetName>
<CityName>STATEN ISLAND</CityName>
<StateAbbreviation>NY</StateAbbreviation>
<PostalCode>10305</PostalCode>
</Address>
</LoanSearchResult>
</LoanSearchResults>
</ResponseBody>
</Results>
</LoanCollection>
Configured service entry in QBO as Loan/MSPProperty with:
- Endpoint - PropertyProfile/v4.0/PropertyProfileRead
- RequestTransform - Templates/Mortgage/MSP/MSP.PropertyProfileRead.Request.xslt
- ResponseTransform - Templates/Mortgage/MSP/MSP.QBO.Response.xslt
<ConfigurationEntryItem>
<ConfigurationEntry>MSPProperty</ConfigurationEntry>
<Source>Loan.config</Source>
<ConfigurationType>qbo.Application.Configuration.ServiceCollection</ConfigurationType>
<ConfigurationKey>MSPProperty</ConfigurationKey>
<ConfigurationXml>
<Service Name="MSPProperty"
Type="qbo.MSP.MSP, qbo.MSP, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
ReturnType="XmlReader"
RequestTransform="Templates/Mortgage/MSP/MSP.PropertyProfileRead.Request.xslt"
ResponseTransform="Templates/Mortgage/MSP/MSP.QBO.Response.xslt"
EndPoint="PropertyProfile/v4.0/PropertyProfileRead"
Async="False"
RequireStream="False"
CompleteStep="False"
LogData="True"
Repeatable="OneActive"
AllowInheritance="True" />
</ConfigurationXml>
</ConfigurationEntryItem>
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
Loan | Loan number | required | |
Exclude | Comma delimited list of information to exlude | optional | ExcludePropertyAddressInfo, ExcludePropertyConditionInfo, ExcludePropertyDwellingInfo, ExcludePropertyFloodInfo, ExcludePropertyLocationInfo, ExcludePropertyOccupancyInfo, ExcludePropertyValueInfo, ExcludeMortgageRecordingInfo, ExcludePropertyCondoInsuranceInfooptional |
POST /Mortgage/Loan.ashx/MSPProperty
Loan=0000000123
&Output=Xml
POST /Mortgage/Loan.ashx/MSPProperty
Loan=0000000123
&Exclude=ExcludePropertyAddressInfo,ExcludePropertyDwellingInfo
&Output=Xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.fnfis.com/services/Services-Common/PropertyProfile/4.0" xmlns:tns="http://www.fnfis.com/services/Services-Common/PropertyProfileRead/1.0" xmlns:qbo="http://services.quandis.com/MSP/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns:PropertyProfileRead>
<RequestContext>
<CorrelationId></CorrelationId>
<UserCompany>Acme</UserCompany>
<UserId>TestSystem</UserId>
<Credentials>
<MSPCredentialList>
<SystemId>TestSystem</SystemId>
<MSPCredential>
<ClientId>123</ClientId>
<MSPId>MWSTest</MSPId>
<RACFId>TestUserName</RACFId>
<RACFPassword>TestCredential</RACFPassword>
</MSPCredential>
</MSPCredentialList>
</Credentials>
<ApplicationId>123</ApplicationId>
<Provider>TestProvier</Provider>
<Locale>
<ISOCountryCode>US</ISOCountryCode>
<ISOLanguageCode>en</ISOLanguageCode>
</Locale>
<EchoRequestContextFlag>0</EchoRequestContextFlag>
</RequestContext>
<PropertyProfileReadRq>
<RequestBody>
<ClientId>123</ClientId>
<LoanNumber>00000123</LoanNumber>
<ExcludePropertyAddressInfo>true</ExcludePropertyAddressInfo>
<ExcludePropertyDwellingInfo>true</ExcludePropertyDwellingInfo>
</RequestBody>
</PropertyProfileReadRq>
</ns:PropertyProfileRead>
</soapenv:Body>
</soapenv:Envelope>
<?xml version="1.0" encoding="utf-8"?>
<LoanCollection>
<Results>
<ResponseHeader>
<Status>
<StatusCode>Success</StatusCode>
<ResultCode>0</ResultCode>
<InformationalMessage>-=SPOC=- LOAN PAST DUE 3 MONTHS</InformationalMessage>
<InformationalMessage>30 DAYS PAST INSPECTION REQUEST</InformationalMessage>
</Status>
</ResponseHeader>
<ResponseBody>
<ClientId>123</ClientId>
<LoanNumber>0000000123</LoanNumber>
<PropertyFloodInfo>
<FIRMInfo>
<CommunityParticipationStartDate>1974-07-02</CommunityParticipationStartDate>
<CommunityNumber>530148</CommunityNumber>
<PanelNumber>0005</PanelNumber>
<MapSuffixNumber>B</MapSuffixNumber>
<PanelEffectiveDate>1983-12-01</PanelEffectiveDate>
<ProgramType>R</ProgramType>
</FIRMInfo>
<LOMA_R>
<LetterOfMapChangeCode>N</LetterOfMapChangeCode>
<LOMADeterminationDate>2013-09-17</LOMADeterminationDate>
<Zone>C</Zone>
<PartialZoneCode>N</PartialZoneCode>
<ContractType>L</ContractType>
<ComplianceCompanyPartyID>FARET</ComplianceCompanyPartyID>
<MappingCompany>FARET</MappingCompany>
<MappingFeeAmount>5.00</MappingFeeAmount>
<CertificateNumber>1309689632</CertificateNumber>
</LOMA_R>
</PropertyFloodInfo>
<PropertyLocationInfo>
<LegalDescriptions>
<ExtendedLegalDescriptionCompleteFlag>false</ExtendedLegalDescriptionCompleteFlag>
<PrimaryLegalDescription>
<MultiplePropertyFlag>false</MultiplePropertyFlag>
</PrimaryLegalDescription>
</LegalDescriptions>
<StateAndCountyCodesInfo>
<IBMStateCode>46</IBMStateCode>
<IBMCountyCode>053</IBMCountyCode>
<IBMCityCode>0750</IBMCityCode>
<SMSACode>8200</SMSACode>
<SMSACensusTractCode>0006.03</SMSACensusTractCode>
<FIPSStateCode>53</FIPSStateCode>
</StateAndCountyCodesInfo>
</PropertyLocationInfo>
<PropertyOccupancyInfo>
<OccupancyInfo>
<CurrentOccupancyPurpose>1</CurrentOccupancyPurpose>
<CurrentOccupancyStatus>1</CurrentOccupancyStatus>
<MasterOccupancyStatusCode>1</MasterOccupancyStatusCode>
<MasterOccupancyStatusCodeDescription>ORIGINAL OWNER</MasterOccupancyStatusCodeDescription>
</OccupancyInfo>
</PropertyOccupancyInfo>
<PropertyValueInfo>
<OriginalPropertyAndLandValueAmount>115000</OriginalPropertyAndLandValueAmount>
<CurrentPropertyAndLandValueAmount>115000</CurrentPropertyAndLandValueAmount>
</PropertyValueInfo>
</ResponseBody>
</Results>
</LoanCollection>
Configured service entry in QBO as Loan/MSPProperty with:
- Endpoint - PropertyProfile/v4.0/PropertyProfileUpdate
- RequestTransform - Templates/Mortgage/MSP/MSP.PropertyProfileUpdate.Request.xslt
- ResponseTransform - Templates/Mortgage/MSP/MSP.QBO.Response.xslt
<ConfigurationEntryItem>
<ConfigurationEntry>MSPPropertyUpdate</ConfigurationEntry>
<Source>Loan.config</Source>
<ConfigurationType>qbo.Application.Configuration.ServiceCollection</ConfigurationType>
<ConfigurationKey>MSPPropertyUpdate</ConfigurationKey>
<ConfigurationXml>
<Service Name="MSPPropertyUpdate"
Type="qbo.MSP.MSP, qbo.MSP, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
ReturnType="XmlReader"
RequestTransform="Templates/Mortgage/MSP/MSP.PropertyProfileUpdate.Request.xslt"
ResponseTransform="Templates/Mortgage/MSP/MSP.QBO.Response.xslt"
EndPoint="PropertyProfile/v4.0/PropertyProfileUpdate"
Async="False"
RequireStream="False"
CompleteStep="False"
LogData="True"
Repeatable="OneActive"
AllowInheritance="True" />
</ConfigurationXml>
</ConfigurationEntryItem>
The following categories can be used when supplying parameters to update property related information
- PropertyAddressInfo
- PropertyDwellingInfo
- PropertyFloodInfo
- PropertyLocationInfo
- PropertyOccupancyInfo
- PropertyValueInfo
- MortgageRecordingInfo
- PropertyCondoInsuranceInfo
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
Loan | Loan number | required |
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
PropertyAddressInfo.HouseNumber | House number for the property address | optional | |
PropertyAddressInfo.StreetDirectionPrefix | Street direction | optional | |
PropertyAddressInfo.StreetName | Street name of property address | optional | |
PropertyAddressInfo.CityName | City of property address | optional | |
PropertyAddressInfo.StateAbbreviation | 2 char state abbreviation | optional | |
PropertyAddressInfo.UnitID | Unit identification for property | optional | |
PropertyAddressInfo.PostalCode | Zip code for property | optional | |
PropertyAddressInfo.PostalCodeSuffix | Zip suffix code of the property | optional |
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
PropertyDwellingInfo.Types.YearBuilt | Year property was built | optional | |
PropertyDwellingInfo.Types.DevelopmentType | optional | ||
PropertyDwellingInfo.Types.OwnerType | Code indicating the type of ownership for the property, such as fee simple, leasehold and installment contract | optional | |
PropertyDwellingInfo.Types.PropertyType | optional | ||
PropertyDwellingInfo.Types.UserDefiniedProperty | Client-defined code indicating the type of property securing the loan (max len 3) | optional | |
PropertyDwellingInfo.Types.FNMAProjectType | optional |
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
PropertyFloodInfo.FIRMInfo.CommunityParticipationStartDate | - | - | - |
PropertyFloodInfo.FIRMInfo.CommunityNumber | - | - | - |
PropertyFloodInfo.FIRMInfo.PanelNumber | - | - | - |
PropertyFloodInfo.FIRMInfo.MapSuffixNumber | - | - | - |
PropertyFloodInfo.FIRMInfo.PanelEffectiveDate | - | - | - |
PropertyFloodInfo.FIRMInfo.ProgramType | - | - | - |
PropertyFloodInfo.LOMA_R.LetterOfMapChangeCode | - | - | - |
PropertyFloodInfo.LOMA_R.LOMADeterminationDate | - | - | - |
PropertyFloodInfo.LOMA_R.Zone | - | - | - |
PropertyFloodInfo.LOMA_R.PartialZoneCode | - | - | - |
PropertyFloodInfo.LOMA_R.ComplianceCompanyPartyID | - | - | - |
PropertyFloodInfo.LOMA_R.OutsourcerID | - | - | - |
PropertyFloodInfo.LOMA_R.MappingCompany | - | - | - |
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
PropertyLocationInfo.CommunityInfo.CRACommunityFlag | Flag used to indicate whether or not the property is located in a Community Reinvestment Act (CRA) community | - | - |
PropertyLocationInfo.CommunityInfo.LowIncomeFlag | Flag used to indicate whether or not the property is located in a low income area | - | - |
PropertyLocationInfo.CommunityInfo.ModerateIncomeFlag | Flag used to indicate whether or not the property is located in a moderate income area | - | - |
PropertyLocationInfo.CommunityInfo.SubstantiallyMinorityFlag | Flag used to indicate whether or not the property is located in a substantially minority populated area. | - | - |
PropertyLocationInfo.LegalDescriptions.ExtendedLegalDescriptionCompleteFlag | Flag used to indicate whether or not the legal description is complete or not | - | - |
PropertyLocationInfo.LegalDescriptions.MetesAndBoundsExtendedLegalDescription | Metes and bounds as described in the legal documents (deed or mortgage) which secure the Note; part of a property's legal description | - | - |
PropertyLocationInfo.LegalDescriptions.PrimaryLegalDescription.SubdivisionAndFHLMCClassDescription | Name of the subdivision (as described in the legal documents (deed or mortgage) | - | - |
PropertyLocationInfo.LegalDescriptions.PrimaryLegalDescription.LegalSection | Section description as described in the legal documents (deed or mortgage) which secure the Note; | - | - |
PropertyLocationInfo.LegalDescriptions.PrimaryLegalDescription.LegalBlock | Block description as described in the legal documents (deed or mortgage) which secure the Note; | - | - |
PropertyLocationInfo.LegalDescriptions.PrimaryLegalDescription.LotNumber | Lot number of the property as defined in the deed | - | - |
PropertyLocationInfo.LegalDescriptions.PrimaryLegalDescription.MultiplePropertyFlag | Flag used to indicate whether or not more than one property or parcel exists on the loan | - | - |
PropertyLocationInfo.LegalDescriptions.PrimaryLegalDescription.ANSICode | A seven digit numeric code used to identify the census-designated place | - | - |
PropertyLocationInfo.LegalDescriptions.PrimaryLegalDescription.AdditionalLegalDescriptions | - | - |
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
PropertyOccupancyInfo.OccupancyInfo.OriginalOccupancyPurpose | Code identifying the intended use of the property at the time the loan was closed, such as occupied, not occupied, or investment property. Do not use for loan purpose. Also known as Original Occupancy Code | - | - |
PropertyOccupancyInfo.OccupancyInfo.OccupancyStatusDescription | Description of the property occupancy status | - | - |
PropertyOccupancyInfo.OccupancyInfo.CurrentOccupancyPurpose | Code indicating the current intended use of the property, such as occupied, not occupied, or investment property | - | - |
PropertyOccupancyInfo.OccupancyInfo.CurrentOccupancyStatus | Code that indicates who is living in the property, if the property is secured or not secured, or if it is partially vacant (multi-family dwelling). | - | - |
PropertyOccupancyInfo.OccupancyInfo.MasterOccupancyStatusCode | Code used to designate the current occupancy status | - | - |
PropertyOccupancyInfo.OccupancyInfo.MasterOccupancyStatusCodeDescription | Description for the corresponding Occupancy Status Code that indicates who is living in the property, whether or not the property is secured, not secured, or if the property is partially vacant (multi-family dwelling) | - | - |
PropertyOccupancyInfo.OccupancyInfo.OccupancyVerifiedComment | Indicates how the property occupancy was verified | - | - |
PropertyOccupancyInfo.OccupancyInfo.FirstKnownVacancyDate | Date the occupants vacated the property | - | - |
PropertyOccupancyInfo.OccupancyInfo.FirstTimeVacantCode | Code used to indicate whether or not the property has been vacated for the first time | - | - |
PropertyOccupancyInfo.OccupancyInfo.AsOfVacancyDate | Date the servicer received the first report giving notice that the dwelling was vacant | - | - |
PropertyOccupancyInfo.TenantInfo.LeasingCompanyID | The name and address identifier indicating the company handling the lease. | - | - |
PropertyOccupancyInfo.TenantInfo.LeasingCompanyName | {Leasing Company Name} Name of the company administering the lease. | - | - |
PropertyOccupancyInfo.TenantInfo.LeasingCompanyPhoneNumber | Telephone number of the company administering the lease. | - | - |
PropertyOccupancyInfo.TenantInfo.LeaseStartDate | {Lease Start Date} Start date of the lease. | - | - |
PropertyOccupancyInfo.TenantInfo.LeaseEndDate | {Lease End Date} End date of the lease. | - | - |
PropertyOccupancyInfo.TenantInfo.LeasePeriod | {Lease Period} The length of the lease in days. | - | - |
PropertyOccupancyInfo.TenantInfo.TenantID | {Tenant ID} The name and address identifier for the tenant. | - | - |
PropertyOccupancyInfo.TenantInfo.TenantName | {Tenant Name} Name of the tenant. | - | - |
PropertyOccupancyInfo.TenantInfo.TenantPhoneNumber | {Tenant Telephone Number} Telephone number of the tenant. | - | - |
PropertyOccupancyInfo.TenantInfo.TenantFollowUpDate | {Tenant Follow Up Date} The date chosen to follow up on this item | - | - |
PropertyOccupancyInfo.TenantInfo.TenantFollowUpCompletedDate | {Tenant Follow Up Completed Date} Date that the follow-up was completed. | - | - |
PropertyOccupancyInfo.TenantInfo.LeaseSecurityDepositAmount | {Lease Security Deposit Amount} The amount of security deposit paid. | - | - |
PropertyOccupancyInfo.TenantInfo.MonthlyRentAmount | {Monthly Rent Amount} Amount of the monthly rent payment. | - | - |
PropertyOccupancyInfo.TenantInfo.NextRentDueDate | {Next Rent Due Date} Due date of the next rent payment. | - | - |
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
PropertyValueInfo.OriginalAppraisalDate | {Real Estate Owned Original Appraisal Date} Date of the appraisal done at loan origination. | - | |
PropertyValueInfo.OriginalPropertyAndLandValueAmount | {Loan Original Combined Property and Land Value Amount} Dollar amount of the combined land/structure appraisal at the time of loan origination. | - | - |
PropertyValueInfo.OriginalLandOnlyValueAmount | {Loan Original Land Value Amount} Dollar amount of the land only appraisal at the time of loan origination. | - | - |
PropertyValueInfo.CurrentAppraisalDate | {Loan Current Appraisal Date} Date of the most recent appraisal. | - | - |
PropertyValueInfo.CurrentPropertyAndLandValueAmount | {Loan Current Combined Property and Land Value Amount} Dollar amount of the most recent combined land/structure appraisal. | - | - |
PropertyValueInfo.CurrentLandOnlyValueAmount | {Loan Current Land Value Amount} Dollar amount of the most recent land only appraisal. | - | - |
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
MortgageRecordingInfo.BookNumberRecorded | - | - | |
MortgageRecordingInfo.PageNumberRecorded | - | - | |
MortgageRecordingInfo.DateRecorded | - | - |
POST /Mortgage/Loan.ashx/MSPPropertyUpdate
Loan=123456789
&PropertyAddressInfo.HouseNumber=111111
&Output=Xml
POST /Mortgage/Loan.ashx/MSPPropertyUpdate
Loan=123456789
&PropertyDwellingInfo.Types.YearBuilt=1942
&Output=Xml
POST /Mortgage/Loan.ashx/MSPPropertyUpdate
Loan=123456789
&PropertyDwellingInfo.Types.YearBuilt=1942
&PropertyAddressInfo.HouseNumber=111111
&Output=Xml
POST /Mortgage/Loan.ashx/MSPPropertyUpdate
Loan=123456789
&PropertyLocationInfo.LegalDescriptions.PrimaryLegalDescription.LotNumber=45
&Output=Xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.fnfis.com/services/Services-Common/PropertyProfile/4.0" xmlns:tns="http://www.fnfis.com/services/Services-Common/PropertyProfileUpdate/1.0" xmlns:qbo="http://services.quandis.com/MSP/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns:PropertyProfileUpdate>
<RequestContext>
<CorrelationId></CorrelationId>
<UserCompany>ServiceMac</UserCompany>
<UserId>414system1</UserId>
<Credentials>
<MSPCredentialList>
<SystemId>P2</SystemId>
<MSPCredential>
<ClientId>414</ClientId>
<MSPId>MWS</MSPId>
<RACFId>STMWS</RACFId>
<RACFPassword>mws1234@</RACFPassword>
</MSPCredential>
</MSPCredentialList>
</Credentials>
<ApplicationId>311</ApplicationId>
<Provider>ServiceMac</Provider>
<Locale>
<ISOCountryCode>US</ISOCountryCode>
<ISOLanguageCode>en</ISOLanguageCode>
</Locale>
<EchoRequestContextFlag>0</EchoRequestContextFlag>
</RequestContext>
<PropertyProfileUpdateRq>
<RequestBody>
<ClientId>414</ClientId>
<LoanNumber>0000107481</LoanNumber>
<PropertyLocationInfo>
<LegalDescriptions>
<PrimaryLegalDescription>
<LotNumber>45</LotNumber>
</PrimaryLegalDescription>
</LegalDescriptions>
</PropertyLocationInfo>
</RequestBody>
</PropertyProfileUpdateRq>
</ns:PropertyProfileUpdate>
</soapenv:Body>
</soapenv:Envelope>
<LoanCollection>
<Results>
<ResponseHeader>
<Status>
<StatusCode>Success</StatusCode>
<ResultCode>0</ResultCode>
</Status>
</ResponseHeader>
</Results>
</LoanCollection>
Configured service entry in QBO as Loan/MSPBorrower with:
- Endpoint - BorrowerContact/v1.08/{RequestType}
- RequestTransform - Templates/Mortgage/MSP/MSP.BorrowerContactRead.Request.xslt
- ResponseTransform - Templates/Mortgage/MSP/MSP.QBO.Response.xslt
Possible Soap Action calls for MSP BorrowerContact/v1.08/{RequestType}
- Retrieving information:
- BorrowerContactRead
- CoBorrowerContactRead
- BorrowerCoBorrowerContactRead
- AdditionalBorrowerContactRead
- ThirdPartyContactRead
- OtherLoanContactRead
- AdditionalContactInformationRead
- TelephoneMaintenanceHistoryRead
<ConfigurationEntryItem>
<ConfigurationEntry>MSPBorrower</ConfigurationEntry>
<Source>Loan.config</Source>
<ConfigurationType>qbo.Application.Configuration.ServiceCollection</ConfigurationType>
<ConfigurationKey>MSPBorrower</ConfigurationKey>
<ConfigurationXml>
<Service Name="MSPBorrower"
Type="qbo.MSP.MSP, qbo.MSP, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
ReturnType="XmlReader"
RequestTransform="Templates/Mortgage/MSP/MSP.BorrowerContactRead.Request.xslt"
ResponseTransform="Templates/Mortgage/MSP/MSP.QBO.Response.xslt"
EndPoint="BorrowerContact/v1.08/BorrowerContactRead"
Async="False"
RequireStream="False"
CompleteStep="False"
LogData="True"
Repeatable="OneActive"
AllowInheritance="True" />
</ConfigurationXml>
</ConfigurationEntryItem>
Parameter | Description | Required/Optional |
---|---|---|
Loan | Loan number | required |
RequestType | Category for the type of borrower information you want returned. This ties to the SoapAction submitted to MSP | required |
POST /Mortgage/Loan.ashx/MSPBorrower
Loan=123456789
&RequestType=BorrowerContactRead
&Output=Xml
POST /Mortgage/Loan.ashx/MSPBorrower
Loan=123456789
&RequestType=ThirdPartyContactRead
&Output=Xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tns="http://www.fnfis.com/services/Services-Common/BorrowerContact/1.08" xmlns:qbo="http://services.quandis.com/MSP/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<tns:BorrowerContactRead>
<RequestContext>
<CorrelationId></CorrelationId>
<UserCompany>Acme</UserCompany>
<UserId>TestSystem</UserId>
<Credentials>
<MSPCredentialList>
<SystemId>TestSystem</SystemId>
<MSPCredential>
<ClientId>123</ClientId>
<MSPId>MWSTest</MSPId>
<RACFId>TestUserName</RACFId>
<RACFPassword>TestCredential</RACFPassword>
</MSPCredential>
</MSPCredentialList>
</Credentials>
<ApplicationId>123</ApplicationId>
<Provider>TestProvier</Provider>
<Locale>
<ISOCountryCode>US</ISOCountryCode>
<ISOLanguageCode>en</ISOLanguageCode>
</Locale>
<EchoRequestContextFlag>0</EchoRequestContextFlag>
</RequestContext>
<BorrowerContactReadRq>
<RequestHeader />
<RequestBody>
<ClientId>123</ClientId>
<LoanNumber>0000000123</LoanNumber>
</RequestBody>
</BorrowerContactReadRq>
</tns:BorrowerContactRead>
</soapenv:Body>
</soapenv:Envelope>
<?xml version="1.0" encoding="utf-8"?>
<LoanCollection>
<Results>
<ResponseHeader>
<Status>
<StatusCode>Success</StatusCode>
<ResultCode>0</ResultCode>
</Status>
</ResponseHeader>
<ResponseBody>
<ClientId>123</ClientId>
<LoanNumber>0000000123</LoanNumber>
<BorrowerFullName>
<LastOrOrganizationName>CERRUTO</LastOrOrganizationName>
<FirstName>ARMINDA</FirstName>
<MiddleName>O</MiddleName>
</BorrowerFullName>
<TelecomInfo>
<PrimaryTelecomNumber>9496032481</PrimaryTelecomNumber>
<SecondaryTelecomNumber>0000000000</SecondaryTelecomNumber>
<FAXNumber>0000000000</FAXNumber>
</TelecomInfo>
<EmailAddress>[email protected]</EmailAddress>
<MoveMailingToBillingAddress>true</MoveMailingToBillingAddress>
<MailingAddress>
<Domestic>
<Street> 65204 S COLD PIONEER HBRS</Street>
<CityName>TACOMA</CityName>
<StateAbbreviation>WA</StateAbbreviation>
<PostalCode>98407</PostalCode>
<PostalCodeSuffix>1328</PostalCodeSuffix>
</Domestic>
</MailingAddress>
<BillingAddress>
<Domestic>
<Street> 65204 S COLD PIONEER H</Street>
<CityName>TACOMA</CityName>
<StateAbbreviation>WA</StateAbbreviation>
<PostalCode>98407</PostalCode>
</Domestic>
</BillingAddress>
</ResponseBody>
</Results>
</LoanCollection>
Configured service entry in QBO as Loan/MSPMortgageHistory with:
- Endpoint - MortgageHistory/v3.01/MortgageHistoryRead
- RequestTransform - Templates/Mortgage/MSP/MSP.MortgageHistoryRead.Request.xslt
- ResponseTransform - Templates/Mortgage/MSP/MSP.QBO.Response.xslt
RequestTransform can have optional parameters:
- ReturnZeroOrBlankActivityDetails - Not an MSP data element only in the Service, defaults to False. If set to true all elements are returned regardless of the value which is to be returned. May cause extremely slow response.
- HistoryRowsRequested - The number of history transactions rows to be returned for a request. If input the value must be even multiples of 50. If it is not input then up to 1500 transactions for the loan will be returned. Valid values are 50 - 1500 in multiples of 50.
<ConfigurationEntryItem>
<ConfigurationEntry>MSPMortgageHistory</ConfigurationEntry>
<Source>Loan.config</Source>
<ConfigurationType>qbo.Application.Configuration.ServiceCollection</ConfigurationType>
<ConfigurationKey>MSPMortgageHistory</ConfigurationKey>
<ConfigurationXml>
<Service Name="MSPMortgageHistory"
Type="qbo.MSP.MSP, qbo.MSP, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
ReturnType="XmlReader"
RequestTransform="Templates/Mortgage/MSP/MSP.MortgageHistoryRead.Request.xslt?HistoryRowsRequested=50"
ResponseTransform="Templates/Mortgage/MSP/MSP.QBO.Response.xslt"
EndPoint="MortgageHistory/v3.01/MortgageHistoryRead"
Async="False"
RequireStream="False"
CompleteStep="False"
LogData="True"
Repeatable="OneActive"
AllowInheritance="True" />
</ConfigurationXml>
</ConfigurationEntryItem>
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
Loan | Loan number | required | |
Filters | Enumerated filter options. At comma delimited list of filters | optional | BalanceAdjustment, CorporateAdvance, DefaultExpenses, Disbursement, Hazard, MI, NonMonetary, Payment, Payoff, Tax, TrustFunds |
SelectionRange.SelectionStartDate | The beginning of a date range to search, a required element if a range is entered | optional | |
SelectionRange.SelectionStopDate | The ending of a date range to search, this defaults to todays date | optional |
POST /Mortgage/Loan.ashx/MSPMortgageHistory
Loan=123456789
&Output=Xml
POST /Mortgage/Loan.ashx/MSPMortgageHistory
Loan=123456789
&Filters=BalanceAdjustment,CorporateAdvance
&SelectionRange.SelectionStartDate=2019-01-01
&SelectionRange.SelectionStopDate=2019-01-25
&Output=Xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tns="http://www.fnfis.com/services/Services-Common/MortgageHistory/3.01" xmlns:qbo="http://services.quandis.com/MSP/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<tns:MortgageHistoryRead>
<RequestContext>
<CorrelationId></CorrelationId>
<UserCompany>Acme</UserCompany>
<UserId>TestSystem</UserId>
<Credentials>
<MSPCredentialList>
<SystemId>TestSystem</SystemId>
<MSPCredential>
<ClientId>123</ClientId>
<MSPId>MWSTest</MSPId>
<RACFId>TestUserName</RACFId>
<RACFPassword>TestCredential</RACFPassword>
</MSPCredential>
</MSPCredentialList>
</Credentials>
<ApplicationId>123</ApplicationId>
<Provider>TestProvier</Provider>
<Locale>
<ISOCountryCode>US</ISOCountryCode>
<ISOLanguageCode>en</ISOLanguageCode>
</Locale>
<EchoRequestContextFlag>0</EchoRequestContextFlag>
</RequestContext>
<MortgageHistoryReadRq>
<RequestBody>
<ClientId>123</ClientId>
<LoanNumber>0000000123</LoanNumber>
<ActivitySelectionGroup>
<BalanceAdjustment>true</BalanceAdjustment>
<CorporateAdvance>true</CorporateAdvance>
</ActivitySelectionGroup>
<SelectionRange>
<SelectionStartDate>2019-01-01</SelectionStartDate>
<SelectionStopDate>2019-01-25</SelectionStopDate>
</SelectionRange>
<HistoryRowsRequested>50</HistoryRowsRequested>
</RequestBody>
</MortgageHistoryReadRq>
</tns:MortgageHistoryRead>
</soapenv:Body>
</soapenv:Envelope>
<?xml version="1.0" encoding="utf-8"?><LoanCollection>
<Results>
<ResponseHeader>
<Status>
<StatusCode>Success</StatusCode>
<ResultCode>0</ResultCode>
</Status>
</ResponseHeader>
<ResponseBody>
<ClientId>123</ClientId>
<LoanNumber>0000000123</LoanNumber>
<TotalTransInHistory>1</TotalTransInHistory>
<TotalTransInSelection>1</TotalTransInSelection>
<CurrentLoanInformation>
<HistoryOldestTranDate>2019-01-18</HistoryOldestTranDate>
<CurrentNextDueDate>2019-01-01</CurrentNextDueDate>
<CurrentInterestRate>0.0375000</CurrentInterestRate>
<CurrentFirstPrincipalBalance>350275.00</CurrentFirstPrincipalBalance>
<CurrentSecondPrincipalBalance>0.00</CurrentSecondPrincipalBalance>
<CurrentRestrictedEscrowBalance>0.00</CurrentRestrictedEscrowBalance>
<CurrentSuspenseBalance>0.00</CurrentSuspenseBalance>
<CurrentEscrowReplaceResrvBalance>0.00</CurrentEscrowReplaceResrvBalance>
<CurrentHUD_PartBalance>0.00</CurrentHUD_PartBalance>
<NetPaymentAmount>1622.18</NetPaymentAmount>
<CurrentPaymentStops>
<DoNotProcessStop>0</DoNotProcessStop>
<BadCheckStop>0</BadCheckStop>
<PaidInFullStop>0</PaidInFullStop>
<ForeclosureStop>0</ForeclosureStop>
<NoNoticeStop>0</NoNoticeStop>
<EscrowAnalysisStop>0</EscrowAnalysisStop>
<DisbursementStop>0</DisbursementStop>
<LateChargeStop>0</LateChargeStop>
</CurrentPaymentStops>
</CurrentLoanInformation>
<ActivityDetails>
<ActivityDetail>
<HistoryTransactionCode>142</HistoryTransactionCode>
<TranType>1</TranType>
<TransactionAppliedDate>2019-01-18</TransactionAppliedDate>
<HistoryAppliedDateSequenceNumber>1</HistoryAppliedDateSequenceNumber>
<DueDate>2019-01-01</DueDate>
<PrincipalPmtAmount>-350275.00</PrincipalPmtAmount>
<UnpaidPrincipalBalance>350275.00</UnpaidPrincipalBalance>
<Tran600SequenceNumber>00</Tran600SequenceNumber>
<HiTypeIndicatorCode>1</HiTypeIndicatorCode>
<SequenceNumberFromEditReport>000416167</SequenceNumberFromEditReport>
<SuspenseReasonCode>0000</SuspenseReasonCode>
<FirstMortgageUnpaidPrincipalBalance>350275.00</FirstMortgageUnpaidPrincipalBalance>
</ActivityDetail>
</ActivityDetails>
</ResponseBody>
</Results>
</LoanCollection>
Configured service entry in QBO as Loan/MSPRecurringPaymentDrafting with:
- Endpoint - RecurringPaymentDrafting/v2.0/RecurringPaymentDraftingRead
- RequestTransform - Templates/Mortgage/MSP/MSP.RecurringPaymentDraftingRead.Request.xslt
- ResponseTransform - Templates/Mortgage/MSP/MSP.QBO.Response.xslt
<!-- MSPRecurringPaymentDrafting -->
<ConfigurationEntryItem>
<ConfigurationEntry>MSPRecurringPaymentDrafting</ConfigurationEntry>
<Source>Loan.config</Source>
<ConfigurationType>qbo.Application.Configuration.ServiceCollection</ConfigurationType>
<ConfigurationKey>MSPRecurringPaymentDrafting</ConfigurationKey>
<ConfigurationXml>
<Service Name="MSPRecurringPaymentDrafting"
Type="qbo.MSP.MSP, qbo.MSP, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
ReturnType="XmlReader"
RequestTransform="Templates/Mortgage/MSP/MSP.RecurringPaymentDraftingRead.Request.xslt"
ResponseTransform="Templates/Mortgage/MSP/MSP.QBO.Response.xslt"
EndPoint="RecurringPaymentDrafting/v2.0/RecurringPaymentDraftingRead"
Async="False"
RequireStream="False"
CompleteStep="False"
LogData="True"
Repeatable="OneActive"
AllowInheritance="True" />
</ConfigurationXml>
</ConfigurationEntryItem>
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
Loan | Loan number | required | |
Filters | Enumerated filter options. At maximum comma delimited list of 4 filters are allowed | optional | None... |
POST /Mortgage/Loan.ashx/MSPRecurringPaymentDrafting
Loan=123456789
&CurrentPaymentDraftInformationFlag=true
&PendingPaymentDraftInformationFlag=true
&CurrentFlexibleDraftInformationFlag=true
&PreviousPaymentDraftInformationFlag=true
&PendingFlexibleDraftInformationFlag=true
&PreviousFlexibleDraftInformationFlag=true
&Output=Xml
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tns="http://www.fnfis.com/services/Services-Common/RecurringPaymentDrafting/2.0"
xmlns:qbo="http://services.quandis.com/MSP/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<tns:RecurringPaymentDraftingRead>
<RequestContext>
<CorrelationId></CorrelationId>
<UserCompany>Quandis</UserCompany>
<UserId>TestMSPUserID</UserId>
<Credentials>
<MSPCredentialList>
<SystemId>TestMSPSystemID</SystemId>
<MSPCredential>
<ClientId>TestMSPClientID</ClientId>
<MSPId>TestMSPID</MSPId>
<RACFId>x</RACFId>
<RACFPassword>x</RACFPassword>
</MSPCredential>
</MSPCredentialList>
</Credentials>
<ApplicationId>1</ApplicationId>
<Provider>Quandis</Provider>
<Locale>
<ISOCountryCode>US</ISOCountryCode>
<ISOLanguageCode>en</ISOLanguageCode>
</Locale>
<EchoRequestContextFlag>0</EchoRequestContextFlag>
</RequestContext>
<RecurringPaymentDraftingReadRq>
<RequestBody>
<ClientId>TestMSPClientID</ClientId>
<LoanNumber>123456789</LoanNumber>
<CurrentPaymentDraftInformationFlag>true</CurrentPaymentDraftInformationFlag>
<PendingPaymentDraftInformationFlag>true</PendingPaymentDraftInformationFlag>
<PreviousPaymentDraftInformationFlag>true</PreviousPaymentDraftInformationFlag>
<CurrentFlexibleDraftInformationFlag>true</CurrentFlexibleDraftInformationFlag>
<PendingFlexibleDraftInformationFlag>true</PendingFlexibleDraftInformationFlag>
<PreviousFlexibleDraftInformationFlag>true</PreviousFlexibleDraftInformationFlag>
</RequestBody>
</RecurringPaymentDraftingReadRq>
</tns:RecurringPaymentDraftingRead>
</soapenv:Body>
</soapenv:Envelope>
<?xml version="1.0" encoding="utf-8"?>
<LoanCollection>
<Results>
<ResponseContext>
<MessageId>ca19521f-70a4-496b-9ca6-227c0f00285a</MessageId>
<SoftwareVersionNumber>7.0.242.5</SoftwareVersionNumber>
</ResponseContext>
<ResponseHeader>
<Status>
<StatusCode>Success</StatusCode>
<ResultCode>0</ResultCode>
<InformationalMessage>LOAN DUE DATE: 01/01/19 MAN CODE: E PROCESS STOP: 0</InformationalMessage>
<InformationalMessage>*** LOAN HAS NO PREVIOUS DRAFTING DATA ***</InformationalMessage>
</Status>
</ResponseHeader>
<ResponseBody>
<ClientId>414</ClientId>
<LoanNumber>2000198041</LoanNumber>
<CurrentPaymentDraftingInformation>
<GeneralInformation>
<DueDate>2019-01-01</DueDate>
<BankInformation>
<BankName>BANK NAME IS NOT AVAILABLE</BankName>
</BankInformation>
</GeneralInformation>
</CurrentPaymentDraftingInformation>
<CurrentFlexibleDraftingInformation />
<CurrentAdditionalDraftingInformation>
<CurrentAdditionalDraftingDetails>
<AdditionalDueDate>2019-01-01</AdditionalDueDate>
<AdditionalDraftActionCode>A</AdditionalDraftActionCode>
<AdditionalDraftBankingInformation />
</CurrentAdditionalDraftingDetails>
</CurrentAdditionalDraftingInformation>
<PendingPaymentDraftingInformation>
<GeneralInformation>
<DueDate>2019-01-01</DueDate>
<BankInformation>
<BankName>BANK NAME IS NOT AVAILABLE</BankName>
</BankInformation>
</GeneralInformation>
</PendingPaymentDraftingInformation>
<PendingFlexibleDraftingInformation />
<PendingAdditionalDraftingInformation>
<PendingAdditionalDraftingDetails>
<AdditionalDueDate>2019-01-01</AdditionalDueDate>
<AdditionalDraftActionCode>A</AdditionalDraftActionCode>
<AdditionalDraftBankingInformation />
</PendingAdditionalDraftingDetails>
</PendingAdditionalDraftingInformation>
</ResponseBody>
</Results>
</LoanCollection>
Configured service entry in QBO as Loan/MSPRecurringPaymentDraftingDelete with:
- Endpoint - RecurringPaymentDrafting/v2.0/RecurringPaymentDraftingDelete
- RequestTransform - Templates/Mortgage/MSP/MSP.RecurringPaymentDraftingDelete.Request.xslt
- ResponseTransform - Templates/Mortgage/MSP/MSP.QBO.Response.xslt
<!-- MSPRecurringPaymentDraftingDelete -->
<ConfigurationEntryItem>
<ConfigurationEntry>MSPRecurringPaymentDraftingDelete</ConfigurationEntry>
<Source>Loan.config</Source>
<ConfigurationType>qbo.Application.Configuration.ServiceCollection</ConfigurationType>
<ConfigurationKey>MSPRecurringPaymentDraftingUpdate</ConfigurationKey>
<ConfigurationXml>
<Service Name="MSPRecurringPaymentDraftingDelete"
Type="qbo.MSP.MSP, qbo.MSP, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
ReturnType="XmlReader"
RequestTransform="Templates/Mortgage/MSP/MSP.RecurringPaymentDraftingDelete.Request.xslt"
ResponseTransform="Templates/Mortgage/MSP/MSP.QBO.Response.xslt"
EndPoint="RecurringPaymentDrafting/v2.0/RecurringPaymentDraftingDelete"
Async="False"
RequireStream="False"
CompleteStep="False"
LogData="True"
Repeatable="OneActive"
AllowInheritance="True" />
</ConfigurationXml>
</ConfigurationEntryItem>
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
Loan | Loan number | required |
POST /Mortgage/Loan.ashx/MSPRecurringPaymentDraftingDelete
Loan=123456789
&GroupCode=U12
&CurrentPaymentDraftInformationFlag=true
&PendingPaymentDraftInformationFlag=true
&DraftCancellationReasonCode=AA
&Output=Xml
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tns="http://www.fnfis.com/services/Services-Common/RecurringPaymentDrafting/2.0"
xmlns:qbo="http://services.quandis.com/MSP/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<tns:RecurringPaymentDraftingDelete>
<RequestContext>
<CorrelationId></CorrelationId>
<UserCompany>Quandis</UserCompany>
<UserId>TestMSPUserID</UserId>
<Credentials>
<MSPCredentialList>
<SystemId>TestMSPSystemID</SystemId>
<MSPCredential>
<ClientId>TestMSPClientID</ClientId>
<MSPId>TestMSPID</MSPId>
<RACFId>x</RACFId>
<RACFPassword>x</RACFPassword>
</MSPCredential>
</MSPCredentialList>
</Credentials>
<ApplicationId>1</ApplicationId>
<Provider>Quandis</Provider>
<Locale>
<ISOCountryCode>US</ISOCountryCode>
<ISOLanguageCode>en</ISOLanguageCode>
</Locale>
<EchoRequestContextFlag>0</EchoRequestContextFlag>
</RequestContext>
<RecurringPaymentDraftingDeleteRq>
<RequestBody>
<ClientId>TestMSPClientID</ClientId>
<LoanNumber>123456789</LoanNumber>
</RequestBody>
</RecurringPaymentDraftingDeleteRq>
</tns:RecurringPaymentDraftingDelete>
</soapenv:Body>
</soapenv:Envelope>
<?xml version="1.0" encoding="utf-8"?>
<LoanCollection>
<Results>
<ResponseContext>
<MessageId>6f6275ba-1752-432a-afb1-4255edfabe7d</MessageId>
<SoftwareVersionNumber>7.0.242.5</SoftwareVersionNumber>
</ResponseContext>
<ResponseHeader>
<Status>
<StatusCode>RequestError</StatusCode>
<ResultCode>800-0456-1038</ResultCode>
<ErrorMessage>RPC error. Message [*** RPC ERROR - INVALID ACTION WITHOUT DELETING TODAY'S MAINTENANCE **] Return code [1001]</ErrorMessage>
<InformationalMessage>LOAN DUE DATE: 01/01/19 MAN CODE: E PROCESS STOP: 0</InformationalMessage>
<InformationalMessage>*** RPC ERROR - INVALID ACTION WITHOUT DELETING TODAY'S MAINTENANCE ***</InformationalMessage>
</Status>
</ResponseHeader>
</Results>
</LoanCollection>
Configured service entry in QBO as Loan/MSPRecurringPaymentDraftingAdd with:
- Endpoint - RecurringPaymentDrafting/v2.0/RecurringPaymentDraftingAdd
- RequestTransform - Templates/Mortgage/MSP/MSP.RecurringPaymentDraftingAdd.Request.xslt
- ResponseTransform - Templates/Mortgage/MSP/MSP.QBO.Response.xslt
<!-- MSPRecurringPaymentDraftingAdd -->
<ConfigurationEntryItem>
<ConfigurationEntry>MSPRecurringPaymentDraftingAdd</ConfigurationEntry>
<Source>Loan.config</Source>
<ConfigurationType>qbo.Application.Configuration.ServiceCollection</ConfigurationType>
<ConfigurationKey>MSPRecurringPaymentDraftingAdd</ConfigurationKey>
<ConfigurationXml>
<Service Name="MSPRecurringPaymentDraftingAdd"
Type="qbo.MSP.MSP, qbo.MSP, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
ReturnType="XmlReader"
RequestTransform="Templates/Mortgage/MSP/MSP.RecurringPaymentDraftingAdd.Request.xslt"
ResponseTransform="Templates/Mortgage/MSP/MSP.QBO.Response.xslt"
EndPoint="RecurringPaymentDrafting/v2.0/RecurringPaymentDraftingAdd"
Async="False"
RequireStream="False"
CompleteStep="False"
LogData="True"
Repeatable="OneActive"
AllowInheritance="True" />
</ConfigurationXml>
</ConfigurationEntryItem>
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
Loan | Loan number | required | |
TODO: Add other parameters |
POST /Mortgage/Loan.ashx/MSPRecurringPaymentDraftingAdd
Loan=123456789
&PendingPaymentDraftingInformation.GeneralInformation.BankInformation.TransitRoutingNumber=011600033
&PendingPaymentDraftingInformation.GeneralInformation.BankInformation.BankAccountNumber=1234567890
&PendingPaymentDraftingInformation.GeneralInformation.BankInformation.BankAccountName=TestBank
&PendingPaymentDraftingInformation.GeneralInformation.BankInformation.BankAccountType=C
&PendingPaymentDraftingInformation.GeneralInformation.DraftEffectiveDate=2019-03-01
TODO: Create full sample.
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tns="http://www.fnfis.com/services/Services-Common/RecurringPaymentDrafting/2.0"
xmlns:qbo="http://services.quandis.com/MSP/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<tns:RecurringPaymentDraftingAdd>
<RequestContext>
<CorrelationId></CorrelationId>
<UserCompany>Quandis</UserCompany>
<UserId>TestMSPUserID</UserId>
<Credentials>
<MSPCredentialList>
<SystemId>TestMSPSystemID</SystemId>
<MSPCredential>
<ClientId>TestMSPClientID</ClientId>
<MSPId>TestMSPID</MSPId>
<RACFId>x</RACFId>
<RACFPassword>x</RACFPassword>
</MSPCredential>
</MSPCredentialList>
</Credentials>
<ApplicationId>1</ApplicationId>
<Provider>Quandis</Provider>
<Locale>
<ISOCountryCode>US</ISOCountryCode>
<ISOLanguageCode>en</ISOLanguageCode>
</Locale>
<EchoRequestContextFlag>0</EchoRequestContextFlag>
</RequestContext>
<RecurringPaymentDraftingAddRq>
<RequestBody>
<ClientId>TestMSPClientID</ClientId>
<LoanNumber>123456789</LoanNumber>
<PendingPaymentDraftingInformation>
<GeneralInformation>
<BankInformation>
<TransitRoutingNumber>011600033</TransitRoutingNumber>
<BankAccountNumber>1234567890</BankAccountNumber>
<BankAccountName>TestBank</BankAccountName>
<BankAccountType>C</BankAccountType>
</BankInformation>
<DraftEffectiveDate>2019-03-01</DraftEffectiveDate>
</GeneralInformation>
</PendingPaymentDraftingInformation>
</RequestBody>
</RecurringPaymentDraftingAddRq>
</tns:RecurringPaymentDraftingAdd>
</soapenv:Body>
</soapenv:Envelope>
TODO: Populate Example
Configured service entry in QBO as Loan/MSPRecurringPaymentDraftingUpdate with:
- Endpoint - RecurringPaymentDrafting/v2.0/RecurringPaymentDraftingUpdate
- RequestTransform - Templates/Mortgage/MSP/MSP.RecurringPaymentDraftingUpdate.Request.xslt
- ResponseTransform - Templates/Mortgage/MSP/MSP.QBO.Response.xslt
<!-- MSPRecurringPaymentDraftingUpdate -->
<ConfigurationEntryItem>
<ConfigurationEntry>MSPRecurringPaymentDraftingUpdate</ConfigurationEntry>
<Source>Loan.config</Source>
<ConfigurationType>qbo.Application.Configuration.ServiceCollection</ConfigurationType>
<ConfigurationKey>MSPRecurringPaymentDraftingUpdate</ConfigurationKey>
<ConfigurationXml>
<Service Name="MSPRecurringPaymentDraftingUpdate"
Type="qbo.MSP.MSP, qbo.MSP, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
ReturnType="XmlReader"
RequestTransform="Templates/Mortgage/MSP/MSP.RecurringPaymentDraftingUpdate.Request.xslt"
ResponseTransform="Templates/Mortgage/MSP/MSP.QBO.Response.xslt"
EndPoint="RecurringPaymentDrafting/v2.0/RecurringPaymentDraftingUpdate"
Async="False"
RequireStream="False"
CompleteStep="False"
LogData="True"
Repeatable="OneActive"
AllowInheritance="True" />
</ConfigurationXml>
</ConfigurationEntryItem>
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
Loan | Loan number | required | |
TODO: Add other parameters |
POST /Mortgage/Loan.ashx/MSPRecurringPaymentDraftingAdd
Loan=123456789
&PendingPaymentDraftingInformation.GeneralInformation.BankInformation.TransitRoutingNumber=011600033
&PendingPaymentDraftingInformation.GeneralInformation.BankInformation.BankAccountNumber=1234567890
&PendingPaymentDraftingInformation.GeneralInformation.BankInformation.BankAccountName=TestBank
&PendingPaymentDraftingInformation.GeneralInformation.BankInformation.BankAccountType=C
&PendingPaymentDraftingInformation.GeneralInformation.DraftEffectiveDate=2019-08-01
&PendingPaymentDraftingInformation.GeneralInformation.PrintLetterOverrideFlag=true
&PendingPaymentDraftingInformation.GeneralInformation.PreNoteDate=2019-07-01
&PendingPaymentDraftingInformation.GeneralInformation.DraftType=M
&PendingPaymentDraftingInformation.GeneralInformation.GroupCode=U12
TODO: Create full sample.
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:tns="http://www.fnfis.com/services/Services-Common/RecurringPaymentDrafting/2.0"
xmlns:qbo="http://services.quandis.com/MSP/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<tns:RecurringPaymentDraftingUpdate>
<RequestContext>
<CorrelationId></CorrelationId>
<UserCompany>Quandis</UserCompany>
<UserId>TestMSPUserID</UserId>
<Credentials>
<MSPCredentialList>
<SystemId>TestMSPSystemID</SystemId>
<MSPCredential>
<ClientId>TestMSPClientID</ClientId>
<MSPId>TestMSPID</MSPId>
<RACFId>x</RACFId>
<RACFPassword>x</RACFPassword>
</MSPCredential>
</MSPCredentialList>
</Credentials>
<ApplicationId>1</ApplicationId>
<Provider>Quandis</Provider>
<Locale>
<ISOCountryCode>US</ISOCountryCode>
<ISOLanguageCode>en</ISOLanguageCode>
</Locale>
<EchoRequestContextFlag>0</EchoRequestContextFlag>
</RequestContext>
<RecurringPaymentDraftingUpdateRq>
<RequestBody>
<ClientId>TestMSPClientID</ClientId>
<LoanNumber>123456789</LoanNumber>
<PendingPaymentDraftingInformation>
<GeneralInformation>
<GroupCode>U12</GroupCode>
<BankInformation>
<TransitRoutingNumber>011600033</TransitRoutingNumber>
<BankAccountNumber>1234567890</BankAccountNumber>
<BankAccountName>TestBank</BankAccountName>
<BankAccountType>C</BankAccountType>
</BankInformation>
<PrintLetterOverrideFlag>true</PrintLetterOverrideFlag>
<DraftEffectiveDate>2019-08-01</DraftEffectiveDate>
<PreNoteDate>2019-07-01</PreNoteDate>
<DraftType>M</DraftType>
</GeneralInformation>
</PendingPaymentDraftingInformation>
</RequestBody>
</RecurringPaymentDraftingUpdateRq>
</tns:RecurringPaymentDraftingUpdate>
</soapenv:Body>
</soapenv:Envelope>
TODO: Populate Example
## MilitaryServiceRelief Entitlement
### MSPMilitaryServiceRelief - MilitaryServiceRelief Configuration
Configured service entry in QBO as Loan/MSPMilitaryServiceRelief with:
* Endpoint - MilitaryServiceRelief/v1.02/MilitaryServiceReliefRead
* RequestTransform - Templates/Mortgage/MSP/MSP.MilitaryServiceReliefRead.Request.xslt
* ResponseTransform - Templates/Mortgage/MSP/MSP.QBO.Response.xslt
``` xml
<ConfigurationEntryItem>
<ConfigurationEntry>MSPMilitaryServiceRelief</ConfigurationEntry>
<Source>Loan.config</Source>
<ConfigurationType>qbo.Application.Configuration.ServiceCollection</ConfigurationType>
<ConfigurationKey>MSPMilitaryServiceRelief</ConfigurationKey>
<ConfigurationXml>
<Service Name="MSPMilitaryServiceRelief"
Type="qbo.MSP.MSP, qbo.MSP, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
ReturnType="XmlReader"
RequestTransform="Templates/Mortgage/MSP/MSP.MilitaryServiceReliefRead.Request.xslt"
ResponseTransform="Templates/Mortgage/MSP/MSP.QBO.Response.xslt"
EndPoint="MilitaryServiceRelief/v1.02/MilitaryServiceReliefRead"
Async="False"
RequireStream="False"
CompleteStep="False"
LogData="True"
Repeatable="OneActive"
AllowInheritance="True" />
</ConfigurationXml>
</ConfigurationEntryItem>
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
Loan | Loan number | required |
GET /Mortgage/Loan.ashx/MSPMilitaryServiceRelief
Loan=0000000123
&Output=Xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.fnfis.com/services/Services-Common/MilitaryServiceRelief/4.0" xmlns:tns="http://www.fnfis.com/services/Services-Common/MilitaryServiceReliefRead/1.0" xmlns:qbo="http://services.quandis.com/MSP/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<tns:MilitaryServiceReliefRead>
<RequestContext>
<CorrelationId></CorrelationId>
<UserCompany>Acme</UserCompany>
<UserId>TestSystem</UserId>
<Credentials>
<MSPCredentialList>
<SystemId>TestSystem</SystemId>
<MSPCredential>
<ClientId>123</ClientId>
<MSPId>MWSTest</MSPId>
<RACFId>TestUserName</RACFId>
<RACFPassword>TestCredential</RACFPassword>
</MSPCredential>
</MSPCredentialList>
</Credentials>
<ApplicationId>123</ApplicationId>
<Provider>TestProvier</Provider>
<Locale>
<ISOCountryCode>US</ISOCountryCode>
<ISOLanguageCode>en</ISOLanguageCode>
</Locale>
<EchoRequestContextFlag>0</EchoRequestContextFlag>
</RequestContext>
<MilitaryServiceReliefReadRq>
<RequestBody>
<ClientId>123</ClientId>
<LoanNumber>00000123</LoanNumber>
</RequestBody>
</MilitaryServiceReliefReadRq>
</tns:MilitaryServiceReliefRead>
</soapenv:Body>
</soapenv:Envelope>
<?xml version="1.0" encoding="utf-8"?>
<LoanCollection>
...
</LoanCollection>
Configured service entry in QBO as Loan/MSPProperty with:
- Endpoint - MilitaryServiceRelief/v1.02/MilitaryServiceReliefUpdate
- RequestTransform - Templates/Mortgage/MSP/MSP.MilitaryServiceReliefUpdate.Request.xslt
- ResponseTransform - Templates/Mortgage/MSP/MSP.QBO.Response.xslt
<ConfigurationEntryItem>
<ConfigurationEntry>MSPMilitaryServiceReliefUpdate</ConfigurationEntry>
<Source>Loan.config</Source>
<ConfigurationType>qbo.Application.Configuration.ServiceCollection</ConfigurationType>
<ConfigurationKey>MSPMilitaryServiceReliefUpdate</ConfigurationKey>
<ConfigurationXml>
<Service Name="MSPMilitaryServiceReliefUpdate"
Type="qbo.MSP.MSP, qbo.MSP, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
ReturnType="XmlReader"
RequestTransform="Templates/Mortgage/MSP/MSP.MilitaryServiceReliefUpdate.Request.xslt"
ResponseTransform="Templates/Mortgage/MSP/MSP.QBO.Response.xslt"
EndPoint="MilitaryServiceRelief/v1.02/MilitaryServiceReliefUpdate"
Async="False"
RequireStream="False"
CompleteStep="False"
LogData="True"
Repeatable="OneActive"
AllowInheritance="True" />
</ConfigurationXml>
</ConfigurationEntryItem>
The following categories can be used when supplying parameters to update military related information
- ServiceMemberInformation
- DepartmentOfDefenseData
- PersonInMilitary
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
Loan | Loan number | required |
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
ServiceMemberInformation.TypeOfService | |||
ServiceMemberInformation.BranchOfService | |||
ServiceMemberInformation.ActiveMilitaryDates.ActiveBeginDate | |||
ServiceMemberInformation.ActiveMilitaryDates.ActiveEndDate |
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
DepartmentOfDefenseData.DMDCSequenceNumber | |||
DepartmentOfDefenseData.DMDCValidationDate | |||
DepartmentOfDefenseData.DMDCFullName.LastName | |||
DepartmentOfDefenseData.DMDCFullName.FirstName | |||
DepartmentOfDefenseData.DMDCFullName.MiddleName | |||
DepartmentOfDefenseData.DMDCActiveBeginDate | |||
DepartmentOfDefenseData.DMDCActiveStatusCode1 | |||
DepartmentOfDefenseData.DMDCServiceAgencyName | |||
DepartmentOfDefenseData.DMDCStatusCode |
Parameter | Description | Required/Optional | Possible Values |
---|---|---|---|
PersonInMilitary.PIMSequenceNumber | - | - | - |
PersonInMilitary.PIMID | - | - | - |
PersonInMilitary.PIMFullName.LastName | - | - | - |
PersonInMilitary.PIMFullName.FirstName | - | - | - |
PersonInMilitary.PIMFullName.MiddleName | - | - | - |
POST /Mortgage/Loan.ashx/MSPMilitaryServiceReliefUpdate
Loan=123456789
&ServiceMemberInformation.TypeOfService=AM
&ServiceMemberInformation.BranchOfService=Army
&ServiceMemberInformation.ActiveMilitaryDates.ActiveBeginDate=2019-01-05
&ServiceMemberInformation.ActiveMilitaryDates.ActiveEndDate=2022-07-13
&DepartmentOfDefenseData.DMDCSequenceNumber=01
&DepartmentOfDefenseData.DMDCValidationDate=2019-04-16
&DepartmentOfDefenseData.DMDCFullName.LastName=Smith
&DepartmentOfDefenseData.DMDCFullName.FirstName=Leonardo
&DepartmentOfDefenseData.DMDCFullName.MiddleName=I
&DepartmentOfDefenseData.DMDCActiveBeginDate=2019-01-12
&DepartmentOfDefenseData.DMDCActiveStatusCode1=X
&DepartmentOfDefenseData.DMDCServiceAgencyName=Army
&DepartmentOfDefenseData.DMDCStatusCode=01
&PersonInMilitary.PIMSequenceNumber=01
&PersonInMilitary.PIMID=M
&PersonInMilitary.PIMFullName.LastName=Smith
&PersonInMilitary.PIMFullName.FirstName=Leonardo
&PersonInMilitary.PIMFullName.MiddleName=I
&Output=Xml
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns="http://www.fnfis.com/services/Services-Common/MilitaryServiceRelief/4.0" xmlns:tns="http://www.fnfis.com/services/Services-Common/MilitaryServiceReliefUpdate/1.0" xmlns:qbo="http://services.quandis.com/MSP/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<tns:MilitaryServiceReliefUpdate>
<RequestContext>
<CorrelationId></CorrelationId>
<UserCompany>ServiceMac</UserCompany>
<UserId>414system1</UserId>
<Credentials>
<MSPCredentialList>
<SystemId>TestSystem</SystemId>
<MSPCredential>
<ClientId>123</ClientId>
<MSPId>MWSTest</MSPId>
<RACFId>TestUserName</RACFId>
<RACFPassword>TestCredential</RACFPassword>
</MSPCredential>
</MSPCredentialList>
</Credentials>
<ApplicationId>123</ApplicationId>
<Provider>TestProvier</Provider>
<Locale>
<ISOCountryCode>US</ISOCountryCode>
<ISOLanguageCode>en</ISOLanguageCode>
</Locale>
<EchoRequestContextFlag>0</EchoRequestContextFlag>
</RequestContext>
<MilitaryServiceReliefUpdateRq>
<RequestBody>
<ClientId>123</ClientId>
<LoanNumber>100000006</LoanNumber>
<ServiceMemberInformation>
<TypeOfService>AM</TypeOfService>
<BranchOfService>Army</BranchOfService>
<ActiveMilitaryDates>
<ActiveBeginDate>2019-01-05</ActiveBeginDate>
<ActiveEndDate>2022-07-05</ActiveEndDate>
</ActiveMilitaryDates>
</ServiceMemberInformation>
<DepartmentOfDefenseData>
<DMDCSequenceNumber>01</DMDCSequenceNumber>
<DMDCValidationDate>2019-04-15</DMDCValidationDate>
<DMDCFullName>
<LastName>LEAS</LastName>
<FirstName>LEONARDO</FirstName>
<MiddleName>I</MiddleName>
</DMDCFullName>
<DMDCActiveBeginDate>2019-01-12</DMDCActiveBeginDate>
<DMDCActiveStatusCode1>X</DMDCActiveStatusCode1>
<DMDCServiceAgencyName>Army</DMDCServiceAgencyName>
<DMDCStatusCode>01</DMDCStatusCode>
</DepartmentOfDefenseData>
<PersonInMilitary>
<PIMSequenceNumber>01</PIMSequenceNumber>
<PIMID>M</PIMID>
<PIMFullName>
<LastName>LEAS</LastName>
<FirstName>LEONARDO</FirstName>
<MiddleName>I</MiddleName>
</PIMFullName>
</PersonInMilitary>
</RequestBody>
</MilitaryServiceReliefUpdateRq>
</tns:MilitaryServiceReliefUpdate>
</soapenv:Body>
</soapenv:Envelope>
<LoanCollection>
<Results>
<ResponseContext>
<MessageId>10fcb03c-7f81-4425-b511-921ae6319f59</MessageId>
<SoftwareVersionNumber>7.0.243.2</SoftwareVersionNumber>
</ResponseContext>
<ResponseHeader>
<Status>
<StatusCode>Success</StatusCode>
<ResultCode>0</ResultCode>
</Status>
</ResponseHeader>
<ResponseBody>
<ClientId>123</ClientId>
<LoanNumber>100000006</LoanNumber>
<ServiceMemberInformation>
<MilitaryStatusCode>F</MilitaryStatusCode>
<LastUpdatedByUser>MWS</LastUpdatedByUser>
<DateUpdated>2019-04-15</DateUpdated>
<CurrentMSRate>6.00000</CurrentMSRate>
<TypeOfService>AM</TypeOfService>
<BranchOfService>ARMY</BranchOfService>
<ActiveMilitaryDates>
<ActiveBeginDate>2019-01-05</ActiveBeginDate>
<ActiveEndDate>2022-07-05</ActiveEndDate>
</ActiveMilitaryDates>
</ServiceMemberInformation>
<DateInformation2 />
<DepartmentOfDefenseData>
<DMDCSequenceNumber>01</DMDCSequenceNumber>
<DMDCValidationDate>2019-04-15</DMDCValidationDate>
<DMDCFullName>
<LastName>LEAS</LastName>
<FirstName>LEONARDO</FirstName>
<MiddleName>I</MiddleName>
</DMDCFullName>
<DMDCActiveBeginDate>2019-01-12</DMDCActiveBeginDate>
<DMDCActiveStatusCode1>X</DMDCActiveStatusCode1>
<DMDCServiceAgencyName>ARMY</DMDCServiceAgencyName>
<DMDCStatusCode>01</DMDCStatusCode>
</DepartmentOfDefenseData>
<PersonInMilitary>
<PIMSequenceNumber>01</PIMSequenceNumber>
<PIMID>M</PIMID>
<PIMFullName>
<LastName>LEAS</LastName>
<FirstName>LEONARDO</FirstName>
<MiddleName>I</MiddleName>
</PIMFullName>
</PersonInMilitary>
<PersonInMilitary>
<PIMSequenceNumber>02</PIMSequenceNumber>
</PersonInMilitary>
<PersonInMilitary>
<PIMSequenceNumber>03</PIMSequenceNumber>
</PersonInMilitary>
</ResponseBody>
</Results>
</LoanCollection>