Open End Lending - Request
Please see the Legend to understand the conventions used to document each element and attribute. Note that for requests, the XML elements are documented in alphabetical order by parent element.
Element | Attributes |
---|---|
<inOpenEnd> | 🔹Account , 🔹APRDec , 🔹BCPY , 🔹DataDirPath , 🔹MAPR_Max , 🔹UseMAPR |
<BeginDate> | |
<Balance> | |
<Fee>[] | 🔹AddToFinChg , 🔸Entry , 🔹MAPR , 🔹Name |
<IntRate> | 🔹AccrualCode |
<Limit> | 🔸PercentForBal |
<Payment> | 🔹FloorPmt , 🔹Lastday , 🔹PayoffPercent , 🔹PmtType |
<Protection> | 🔹ShowCaps |
<Birthday1> | |
<Birthday2> | |
<Dis> | 🔹Covers , 🔹Plan |
<Job> | 🔹Covers |
<Lif> | 🔹Covers |
<Term> | |
<TimeToPmt> | 🔹TimeUnits |
🟥 <inOpenEnd>
Element Type | Data Type |
---|---|
Parent | - |
This is the root element of the XML open end query input message, and is
required. This contains child elements which specify the particulars of the
requested calculation. The following attributes of the <inOpenEnd>
element are
defined:
Attributes:
🔹Account
🔹APRDec
🔹BCPY
🔹DataDirPath
🔹MAPR_Max
🔹UseMAPR
🔹 Account
(1..9999)
Data Type | Values | Default |
---|---|---|
Integer | [1...9999] | 1 |
This attribute specifies which account should be used to compute the requested
open end loan. Each account is numbered from 1 to 9,999, and each account
corresponds to a set of setup files which define numerous settings which may
affect the open end calculation, such as insurance rates, etc. If this attribute
is not specified, a default value of 1
will be used.
🔹 APRDec
Data Type | Values | Default |
---|---|---|
Integer | [1...5] | 3 |
The number of decimal places of accuracy for the disclosed APR is determined by this attribute. The default value of this attribute is three (3). Note that for the APR to be computed and disclosed, the BCPY attribute (see below) must be specified.
🔹 BCPY
Data Type | Values | Default |
---|---|---|
Enum | 1 , 2 , 4 , 6 , 12 , 24 , 26 , 52 , 365 , annual , semiannual , quarterly , bi-monthly , monthly , semimonthly , biweekly , weekly , daily , none | none |
The value of this attribute specifies the number of billing cycles per year, and is required to compute the effective annual percentage rate (APR) and MAPR. To remain backwards compatible with previous versions of the SCEX, this attribute is optional. If left unspecified, the value of BCPY is undetermined and the APR and MAPR will not be computed nor disclosed.
🔹 DataDirPath
Data Type | Values | Default |
---|---|---|
Text | See below | See below |
If this attribute is set, the SCE will look for a data folder containing the
setup files in the path specified. Thus, if the DataDirPath
is set to
C:\SCEX\
, the SCE will look for the setup files in C:\SCEX\data
.
If the calling application wishes to specify the data directory path in its
entirety (e.g. the calling app does not want the SCE to append \data
to the
provided path), then simply terminate the specified DataDirPath
with an
asterisk (*
). Thus, if the DataDirPath
is set to C:\SCEX\bank1\*
, the SCE
will look for the setup files in C:\SCEX\bank1\
.
If this attribute is not set, the SCE will attempt to locate the data folder in
the default data directory path location, which can be retrieved using the
<inVERSION>
module query, and set via the SCE API.
This attribute is useful if you wish to use only a single installation of the
SCE, but have many different setup file groupings. By specifying a different
DataDirPath
for each grouping, you can easily separate the groups from one
another instead of grouping them all together in a single directory.
🔹 MAPR_Max
Element Type | Data Type | Values | Default |
---|---|---|---|
Data | Decimal | >= 0 | 36 |
If you are computing the Military APR (see UseMAPR below) and wish to override the default maximum APR value of 36%, then specify the desired maximum as the value of this attribute.
🔹 UseMAPR
Data Type | Values | Default |
---|---|---|
Boolean | true , false , 1 , 0 | false |
If this attribute is set to a value of true
or 1
, then the SCEX will compute
the Military APR in addition to the Regulation Z effective APR. The <MAPR>
element will be included in the XML loan response. Note that for the MAPR to be
computed and disclosed, the BCPY attribute (see above) must be specified.
🟥 <BeginDate>
Element Type | Data Type | Values |
---|---|---|
Data | Date | >= 1900-01-01 |
This element contains the date on which interest begins accruing for the
scheduled payment. As an example, assuming that interest should begin accruing
on March 15, 2009, then we would pass in a begin date of
<BeginDate>2009-03-15</BeginDate>
.
Attributes: None
🟦 <Balance>
Element Type | Data Type | Values | Default |
---|---|---|---|
Data | Decimal | >=0 | 0 |
Contains the outstanding principal balance of the open end loan, on which
interest will be accrued. If the <Balance>
is not specified, then the
<Limit>
must be specified.
Attributes: None
🟦 <Fee>[]
Element Type | Data Type | Values | Default |
---|---|---|---|
Empty | - | - | No fee |
The <Fee>
element itself contains no data. Instead, all of the information
used to compute the fee is contained in the following attributes of the element:
Attributes:
🔹AddToFinChg
,🔸Entry
,🔹MAPR
,🔹Name
🔹 AddToFinChg
Data Type | Values | Default |
---|---|---|
Boolean | true , false , 1 , 0 | false |
If this fee should be included in the Reg. Z Finance Charge (and hence, affect the APR), then set this attribute to true. The default value of false indicates that the fee does not affect the Finance Charge nor APR.
🔸 Entry
Data Type | Values |
---|---|
Currency | >= 0 |
The fee amount, expressed in dollars and cents.
🔹 MAPR
Data Type | Values | Default |
---|---|---|
Boolean | true , false , 1 , 0 | false |
If you wish to compute the Military APR, then certain fees may not be considered Regulation Z APR affecting fees, but are considered Military APR affecting fees. In this case, you will need to set the value of this attribute to true.
Fees which are added to the finance charge (e.g. AddToFinChg="true") are always considered MAPR fees, regardless of the stated value of this attribute.
Note that debt protection products are automatically included in the calculation of the Military APR.
🔹 Name
Data Type | Values | Default |
---|---|---|
Text | any | empty |
This attribute is for convenience purposes only, and does not affect the
calculation of the fee in any manner. If a Name attribute is specified for the
<Fee>
element, then the corresponding <Fee>
element in the XML output will have a Name attribute with the same value. This
allows you to easily differentiate fees in the output XML.
🟥 <IntRate>
Element Type | Data Type | Values |
---|---|---|
Data | Decimal | >=0 |
The rate at which interest will accrue on the outstanding principal balance.
Attributes:
🔹AccrualCode
🔹 AccrualCode
Data Type | Values | Default |
---|---|---|
Enum | See table Below | 220 |
This attribute allows the calling application to specify an accrual method for
use during the open end calculation. If no accrual code attribute is specified,
then a value of 220
is assumed. Please reference the table below for a
description of the numeric accrual codes.
Accrual Code | Description |
---|---|
201 | Unit period simple w/ 360 day divisor |
202 | Unit period simple w/ 365 day divisor |
204 | Unit period simple w/ true 360 calendar and 360 day divisor. |
205 | Unit period simple w/ true 360 calendar and 365 day divisor. |
210 | Actual / 360 simple |
220 | Actual / 365 simple |
230 | Actual / Actual simple |
231 | Actual / Actual simple w/ day count starting at midnight. |
🟦 <Limit>
Element Type | Data Type | Values | Default |
---|---|---|---|
Data | Decimal | >= 0 | 0 |
The maximum amount that can be drawn from the credit line. One must specify
either the <Limit>
or the <Balance>
.
Attributes:
🔸PercentForBal
🔸 PercentForBal
Data Type | Values |
---|---|
Decimal | >= 0 |
This attribute is mandatory when using the <Limit>
element. It represents the
estimated percentage of the total line of credit that the customer will use, and
hence is used to compute the monthly cost.
As an example, <Limit PercentForBal="42.0">100000</Limit>
is exactly
equivalent to passing <Balance>42000</Balance>
.
🟦 <Payment>
Element Type | Data Type | Values | Default |
---|---|---|---|
Empty | - | - | - |
Currently, the element value is not used. It may be used in the future, however.
Attributes:
🔹PmtType
,🔹FloorPmt
,🔹Lastday
,🔹PayoffPercent
🔹 PmtType
Data Type | Values | Default |
---|---|---|
Enum | See table Below | PrinPlusInt |
This attribute allows the calling application to specify the method used for
computing the minimum payment. If no payment type attribute is specified, then
the PrinPlusInt
method is used by default.
Payment Type | Description |
---|---|
EqualPmt | Compute the loan as if it were a standard equal payment installment loan. This method requires the <Term> element. |
IntOnly | The minimum payment includes only interest and protection, with no principal reduction. |
PrinPlusInt | The minimum payment includes interest, protection, and a principal reduction amount equal to Balance/Term. This method requires the <Term> element. |
PercentToPayoff | The minimum payment is computed as a percentage of the principal plus interest. Protection is added to this calculated amount. |
PercentToBalance | The minimum payment is computed as a percentage of the balance, plus interest due. Protection is added to this calculated amount. |
🔹 FloorPmt
Data Type | Values | Default |
---|---|---|
Decimal | >= 0 | 0 |
If the value of this attribute is greater than zero, and if the computed payment falls below this value, then the returned payment will be set equal to this floor payment amount.
🔹 Lastday
Data Type | Values | Default |
---|---|---|
Boolean | true , false , 1 , 0 | false |
This attribute defines the ‘Last Day’ setting for loans computed with an actual day calendar where the first payment date falls at the end of a month with fewer than 31 days. As an example, if the first payment date is on April 30, should the following payment dates be made on the 30th of each month, or on the last day of the month?
If true
is specified, then conditions triggering a last day situation will
result in payments which fall at the end of the month. A value of false
indicates that when dictated, subsequent payment dates will not be moved to the
last day of the month.
🔹 PayoffPercent
Element Type | Data Type | Values | Default |
---|---|---|---|
Data | Decimal | >= 0 | 0 |
If PmtType
is equal to PercentToPayoff
or
PercentToBalance
, then this attribute is required, and must hold the percent
used to calculate the principal and interest payment.
As an example: suppose that the balance is $10,000, interest is calculated as
$83.33, and that the value of PercentToPayoff
is 3.000%, then the principal
and interest payment is 3% of $10,083.33, or $302.50 (payments are rounded to
the nearest penny).
🟦 <Protection>
Element Type | Data Type |
---|---|
Parent | - |
The <Protection>
element is used to specify debt protection coverages such as
life, disability, and job loss. Each type of coverage is specified by its own
subelement, along with the borrower birthdays.
Attributes:
🔹ShowCaps
🔹 ShowCaps
Data Type | Values | Default |
---|---|---|
Boolean | true , false , 1 , 0 | false |
If the calling application would like to have cap information (e.g. maximum
terms, coverage amounts, ages, etc.) returned for each product offered, set the
value of this attribute to true. Otherwise, leave this attribute unspecified or
set it to false. See the <Caps>
element defined in the
output section for more information.
🟦 <Protection>
→<Birthday1>
Element Type | Data Type | Values |
---|---|---|
Data | Date | >= 1900-01-01 |
This element contains the date of birth for the primary borrower. All dates must
be in the form of YYYY-MM-DD, and be 10 characters long. Hence, a birthday of
April 9, 1972 would be specified as <Birthday1>1972-04-09</Birthday1>
. Note
that this element must be set if the Covers attribute of any of the two debt
coverage elements is set to borrower1 or both.
Attributes: None
🟦 <Protection>
→<Birthday2>
Element Type | Data Type | Values |
---|---|---|
Data | Date | >= 1900-01-01 |
This element contains the date of birth of the secondary borrower. All dates
must be in the form of YYYY-MM-DD, and be 10 characters long. Hence, a birthday
of May 21, 1969 would be specified as <Birthday2>1969-05-21</Birthday2>
. Note
that this element must be set if the Covers attribute of any of the two debt
coverage elements is set to both.
Attributes: None
🟦 <Protection>
→<Dis>
Element Type | Data Type |
---|---|
Empty | - |
The <Dis>
element determines what type of disability coverage is desired. The
element itself is empty, with all information needed for disability coverage
request being specified in the following attribute:
🔹 Covers
Data Type | Values | Default |
---|---|---|
Enum | borrower1 , borrower2 , both , none | borrower1 |
This attribute determines what type of disability coverage is being requested.
The values borrower1
and borrower2
represent single coverage on either the
primary or secondary borrower respectively. A request for joint coverage on both
borrowers is indicated by a value of both
. Finally, if no coverage is desired,
specify a value of none
.
🔹 Plan
Data Type | Values | Default |
---|---|---|
Integer | [0...19*] | 0 |
If the specified account has been set up with multiple disability or debt
cancellation plans, then this attribute determines which plan number will be
used. If no plan number is specified, the first plan (plan zero) will be used.
To find out the number of available plans, use the
<AHSetCount>
element returned from an
<inINPUT_TOOL>
query.
🟦 <Protection>
→<Job>
Element Type | Data Type |
---|---|
Empty | - |
The <Job>
element determines what type of job loss coverage is requested for
the open end loan. The element itself is empty, with all information needed for
a life coverage request being specified in the following attribute:
Attributes:
🔹Covers
🔹 Covers
Data Type | Values | Default |
---|---|---|
Enum | borrower1 , borrower2 , both , none | borrower1 |
This attribute determines what type of job loss coverage is being requested. The
values borrower1
and borrower2
represent single coverage on either the
primary or secondary borrower respectively. A request for joint coverage on both
borrowers is indicated by a value of both
. Finally, if no coverage is desired,
specify a value of none
.
🟦 <Protection>
→<Lif>
Element Type | Data Type |
---|---|
Empty | - |
The <Lif>
element determines what type of life coverage is requested for the
open end loan. The element itself is empty, with all information needed for a
life coverage request being specified in the following attribute:
Attributes:
🔹Covers
🔹 Covers
Data Type | Values | Default |
---|---|---|
Enum | borrower1 , borrower2 , both , none | borrower1 |
This attribute determines what type of life coverage is being requested. The
values borrower1
and borrower2
represent single coverage on either the
primary or secondary borrower respectively. A request for joint coverage on both
borrowers is indicated by a value of both
. Finally, if no coverage is desired,
specify a value of none
.
🟦 <Term>
Element Type | Data Type | Values |
---|---|---|
Data | Integer | >0 |
Sometimes, the minimum monthly payment is computed as if the loan were a closed
end loan of a specific term. Enter that term if your open end lending uses a
PmtType
of EqualPmt
or PrinPlusInt
. If the
PmtType
attribute is not one of these two values, then
this element may be omitted.
Attributes: None
🟥 <TimeToPmt>
Element Type | Data Type | Values |
---|---|---|
Data | Integer | >= 0 |
The numeric, unitless quantity representing the time from the <BeginDate>
to
the payment. In our sample above, the <TimeToPmt>
element holds a value of
1
, indicating that time between the <BeginDate>
and the date on which the
payment is due is one unit of time (see TimeUnits
attribute below).
Attributes:
🔹TimeUnits
🔹 TimeUnits
Data Type | Values | Default |
---|---|---|
Enum | Days , Months , Date | Months |
The units associated with the parent element. In the example above, the unit of
time is Months
. For the following examples, assume a <BeginDate>
of
2009-03-01:
<TimeToPmt TimeUnits="Date">2009-04-01</TimeToPmt>
Indicates that the payment date is on April 1, 2009.
<TimeToPmt TimeUnits="Months">1</TimeToPmt>
Also indicates that the payment date is on April 1, 2009.
<TimeToPmt TimeUnits="Days">31</TimeToPmt>
Also indicates that the payment date is on April 1, 2009.
Note that when using the Days value, the actual number of days will be used to compute the payment date.