Internet Lending API

Intro XL Internet Lending API

Version 1.14

 

This document describes the API functions that can be called to send and retrieve data from the Intro XL database.  The XML is posted to https://www.Intro XL.com/processrequest.aspx

 

What’s New:

 

Version 1.13

  • Updated Names of Last_Payday and Next_Payday fields for Leads
  • Added optional “Position” field for Leads
  • Added optional “ClarityTrackingCode” field for Leads
  • Added optional “DecisionLogicCode” field for Leads
  • Added optional “note” field for Leads

 

Version 1.14

  • Added MarketingTextingOption fields for Leads and Loan
  • Added Reference info to Loan
  • Added DecisionLogicCode for GetLead

 

 

 

Contents

Introduction. 3

The ASP.NET Template Web Site. 4

Updating the ASP.NET Template for use on your web site. 5

Loans vs. E-Signatures. 7

API Calls. 8

validateuser. 8

esignature. 9

getesig. 10

getlead. 12

lead. 17

latestloan. 25

loan. 28

loanbalance. 31

loanconfirmation. 32

loanlistadmin. 33

Loanlistunconfirmedadmin. 34

loanlistunconfirmeduser. 35

loanlistuser. 36

registereduser. 37

checklast4. 38

updatepassword. 39

solicitations. 40

GetConfirmationCode. 41

 

 

Introduction

This document describes the API for sending and receiving data from Intro XL.

The Intro XL API is different than other loan management systems in that we give you a lot more control over the process.  Other LMS providers will allow you to gather and send in the loan application data to them from your web site, but the rest of the process (the e-signature, customer portal, etc.) is controlled by them.  This means that when changes are needed, you are at the mercy of the LMS provider.

With the Intro XL API, the entire process happens on your web site, so you have total control of the experience.  If, for instance, you need to make a change to your loan agreement, you don’t have to wait for the LMS provider to make the change for you.

In order to make the process of interfacing with Intro XL as easy as possible, we provide an ASP.NET template web site that you can use to get your site up and running quickly.  And if you don’t have any in-house technical expertise, we will help you with the configuration and the installation of your web site.

 

The ASP.NET Template Web Site

 

We can provide an ASP.NET template site to our customers that do internet loans.  The template site has all of the necessary API calls built in to get you up and running quickly.  Even if you plan to create your own interface in the language of your choice, we suggest that you use our template web site in the beginning.

Here’s a list of the main web pages that are provided, and what they are used for:

LoanApp.aspx – 
This is the loan application.  The info is sent to Intro XL and a confirmation message is sent to the potential borrower.

QuickApp.aspx –
This is an optional form that begins the new loan application process.  It captures basic contact information.  The info is sent to Intro XL and then they are redirected to LoanApp.aspx.  The purpose of this page is to capture the basic info on the customer in case they abandon the application.  Some sites have the Quick App on the home page, so in that case this page would be unnecessary.

Confirmation.aspx –
This is a sample page that is displayed to the customer after they complete their loan application.  The name of the page where the user is redirected can be set inside of Intro XL.

Decline.aspx –
This is a sample page that is displayed to the customer after they complete their loan application and the application is rejected.  The name of the page where the user is redirected after they are rejected can be set inside of Intro XL.

Login.aspx –
This page will accept the user id (email address) and password of a registered user and send an API call to Intro XL to validate the user.  The user’s password is stored in the Intro XL database.

Also, if the customer is not yet registered, they can register themselves.  They must have a pending loan in order to register.

They can also request a password reset.  A new random password will be created and emailed to the user.

Intro XL users can also log in as an “admin” to view all of the loans that have been issued.  They can set their password inside of Intro XL.

Home.aspx / AdminHome.aspx –
This page displays the customer’s active loans, as well as any new loans that they have not yet agreed to.  Pending loans are only good until the end of the day, at which time they disappear.  A new loan can be created at that point.

The home page also has a link to view loan details on active loans.

If the user is an admin, they will see the loans of all customers.

Details.aspx –
This page shows the details of a specific loan.  It also does an API call to the server to get the current payoff.  A link to this page is displayed on Home.aspx.

NewLoan.aspx –
The main purpose of this page is to send an email notification to the customer when a new loan is created in Intro XL.

This page is not displayed to the customer.  It is used to receive new loan notifications from Intro XL.  When a new loan is created in Intro XL, it sends a request to this page with the ID of the loan.  This page then retrieves the loan info from Intro XL via the API, and then it sends an email to the customer notifying them that there is a pending loan awaiting them.  A link to CompleteApp.aspx is included in the email.  If your Intro XL account is configured to automatically send an email when a new Internet Loan is created, you can ignore this page.

CompleteApp.aspx –
This page is used to complete the loan application process.  The user logs in or registers themselves, and then it shows them the new loan that they have been approved for.  It displays a link to the Loan Agreement.  It is not necessary to send the user to this page when they have a new loan pending.  They can go to Login.aspx and log in, and they will see the new loan there as well.

Reapply.aspx –
This page allows an existing customer to re-apply for a loan.

ResetPassword.aspx –
This page allows an existing customer to reset their password.

InstallmentAgreement.aspx –
This page is where the loan agreement is displayed to the potential customer and they e-sign the loan.

Updating the ASP.NET Template for use on your web site
If you are planning to use the ASP.NET template web site, there is a minimum amount of configuration that will need to happen before the site can be used.  The following items will need to be completed before the site can be used in a live environment:

  • The application pages need to be branded accordingly to match the rest of the web site.  We use master pages so that the branding only has to be done in a few spots.
  • The Web.Config file needs to be updated with the correct API settings. These settings will be supplied by your account representative at Intro XL.
  • The site needs to be configured to work with your email provider.  It is currently set up to send emails via Amazon SES. If you’re planning to use Amazon SES, the settings are stored in the Web.Config file. Emails are sent from these pages:
    • App_Code\Security.cs,
    • App\NewLoan.aspx.cs,
    • App\LoanApp.aspx.cs,
    • App\Reapply.aspx.cs.
  • Your loan application needs to be converted to an ASP.NET page so that it can be e-signed. aspx should be used as a template.  If you have different agreements for different loan types, you can create multiple ASP.NET pages.  The name of the ASP.NET page that is to be used for each loan type is stored inside of Intro XL.

We realize that not everyone has in-house technical expertise to configure the template for their use.  We can help you with this process.  Contact your account representative

 

Loans vs. E-Signatures

There are two types of “loans” that can be generated in order to present the customer with an e-signature page.  The first kind is referred to as a “Loan” in the API documentation.  This is a real loan that is created manually in Intro XL.  The loan is in an un-confirmed status until the customer e-signs it.  Once it is e-signed by the customer, the loan is active in Intro XL.

The second type of loan is an “esignature”.  An esignature is a temporary loan that can be automatically generated by Intro XL after a new loan application is submitted and passes the “rules engine”.  The purpose of esignatures is to automatically present the potential customer with a loan agreement that they can sign immediately after they submit their loan application.  After the esignature is signed by the customer, it is not yet considered a real loan in Intro XL.  The Customer Service Rep. may want to change the loan amount, or first payment date of the loan.  In that case, they can re-create the esignature and ask the potential customer to re-sign it.  If the customer service rep. is satisfied with the parameters if the esignature, they can convert it into a real “loan”.  At that point, the customer can log into their account and view the “loan”.

If you are set up to automatically generate esignatures on approved applications, the “esig” section will be appended to the loan application XML data that is returned by Intro XL.  The “esig” XML data is very similar to the XML data for a “Loan”.  If you are using esignatures, you will need to be able to display the loan agreement to the customer using both “esig” data and “loan” data.

 

API Calls

 

validateuser

This function checks the user’s credentials against the Intro XL database.    This function can be used to authenticate a customer, or to authenticate an Intro XL user.

 

Fields:

CompanyThe company abbreviation in Intro XL
StoreidThe store number in Intro XL
PasswordThe API Password
UseridThe customer’s userid, which is also their email address.   For Intro XL users, this is their Intro XL username.
userpassThe Customer’s password.  The password for Intro XL users can be set/changed on the Profile page inside of Intro XL

 

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<validateuser>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<userid>test@test.com</userid>

<userpass>xxxxxx</userpass>

</validateuser>

</introrequest>

Response Fields:

Statuscode“ok” means that the user has been authenticated.  “Failed” means that the user was not authenticated successfully.
DescriptionDescription.  This element will only appear if the Statuscode = “Failed”.
Usertype“Borrower” for regular customers or “Admin” for Intro XL Users.  This element will only appear of the Statuscode = “ok”.

 

esignature

When a customer accepts the terms of the e-signature agreement , this allows you to notify Intro XL that the e-signature has been accepted by the customer by passing the e-signature data back to Intro XL.

 

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<esignature>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<Store></Store>

<guid>2b3d7b3a-9720-4e4f-b5bf-489d664e51b5</guid>

<agreeddate>5/21/2013</agreeddate>

<agreedip>192.168.1.1</agreedip>

<agreedfirst>Tom</agreedfirst>

<agreedlast>Tester</agreedlast>

<agreedssn>9998887777</agreedssn>

</ esignature>

</itrorequest>

 

 

Response Fields:

Statuscode“success” means that the e-signature information was successfully entered into Intro XL.
DescriptionReturn Description.  This will give more information if an error occurred.

 

 

 

 

getesig

This allows you to retrieve information for an existing e-signature

 

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<getesig>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<Store></Store>

<GUID>2b3d7b3a-9720-4e4f-b5bf-489d664e51b5</GUID>

</getesig>

</introrequest>

 

 

Response Fields:

Statuscode“success” means that the e-signature information was successfully retrieved by Intro XL.
DescriptionReturn Description.  This will give more information if an error occurred.
esigRoot element for the Esig data.  This will only be returned if you are set up to automatically generate an e-signature.
  agreementdate 
  loandate 
  Interestrate 
  numberofpayments 
  frequency“7” = Weekly

“14” = BiWeekly

“15” = Semi-Monthly

“30” = 30-day

“31” = Monthly

  frequencydescription 
  duedate 
  principal 
  sumofpayments 
  balanceatmaturityAmount that would be due on the due date if no payments were ever made.
  amountfinanced 
  financecharge 
  apr 
  fee1 
  fee2 
  fee3 
  fee4 
  fee5 
  fee6 
  fee7 
  fee8 
  fee9 
  fee10 
  agreeddateDate that the e-signature agreement was accepted
  agreedipIP address of the person who accepted the e-signature agreement
  agreedfirstFirst name of the person who accepted the e-signature agreement
  agreedlastLast Name of the person who accepted the e-signature agreement
  agreedssnSocial Security Number of the person who accepted the e-signature agreement
  paymentsRoot element for payments
    paymentRoot element for an individual payment
      date 
      amount 

 

 

 

 

getlead

This allows you to retrieve information for an existing lead.

 

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<getlead>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<Store></Store>

<guid>2b3d7b3a-9720-4e4f-b5bf-489d664e51b5</guid>

</ getlead>

</introrequest>

 

 

Response Fields:

IPIP address from where the lead originated
GUIDGUID of the lead
LeadKeyNumeric ID of the lead inside of Intro XL
FirstName 
LastName 
Email 
Address 
City 
State 
ZipCode 
YearsAtAddress Suggested values:

LT1 = Less than 1 year

1 = 1 to 2 years

3 = 3 to 5 years

6 = 6 to 10 years

10 = more than 10 years

Rentertrue or false
Phone 
CellPhone 
CallBackNumber 
TimeReachable 
DateOfBirth 
Citizentrue or false
SSN 
DLNoDrivers License No
Militarytrue or false
MilitaryDependanttrue or false
BorrowAmount 
PaycheckAmount 
DirectDeposittrue or false
PayFrequency 7 = Weekly

14 = Bi-Weekly

15 = Semi-Monthly

31 = Monthly

NextPaydayUse this field for the person’s Last Payday
SecondPaydayUse this field for the person’s Next Payday
IncomeType Suggested Values:

Employment

Government

Employer 
EmployerAddress 
EmployerCity 
EmployerState 
EmployerZip 
YearsEmployed Suggested values:

LT1 = Less than 1 year

1 = 1 to 2 years

3 = 3 to 5 years

6 = 6 to 10 years

10 = more than 10 years

WorkPhone 
BankName 
ABARoutingNo 
BankAccountNo 
Checkingtrue for Checking and false for Savings
YearswithBankAccount 
ReferenceFirst 
ReferenceLast 
ReferencePhone 
ReferenceRelationshipSuggested Values:

Mother

Father

Wife

Husband

Friend

Other

Reference2First 
Reference2Last 
Reference2Phone 
Reference2RelationshipSuggested Values:

Mother

Father

Wife

Husband

Friend

Other

Reference3First 
Reference3Last 
Reference3Phone 
Reference3RelationshipSuggested Values:

Mother

Father

Wife

Husband

Friend

Other

OptionValuesExtra information about the lead.  If multiple values have been entered into this field, they will b separated by a Pipe Character (|).
VehicleMake 
VehicleModel 
VehicleYear 
VehicleBodyStyle 
VehicleTransmission 
VehicleMileage 
VehicleColor 
VehicleVIN 
VehiclePlate 
VehicleInsCompany 
VehicleInsPolicyNo 
VehicleInsPhone 
VehicleTitle 
DecisionLogicCode 
CompanyNameThe Company Legal name inside of Intro XL of the store where the lead was posted
StoreNumberStore Number inside of Intro XL where the lead was posted
StoreAddress 
StoreCity 
StoreState 
StoreZip 
StorePhone 
StoreFAX 
StoreEmail 
NSFFeeNSF Fee amount for the store where the lead was posted.
StoreCustomField1 
StoreCustomField2 
Statuscode“success” means that the lead information was successfully retrieved by Intro XL.
DescriptionReturn Description.  This will give more information if an error occurred.
esigRoot element for the Esig data.  This will only be returned if you are set up to automatically generate an e-signature.
  agreementdate 
  loandate 
  Interestrate 
  numberofpayments 
  frequency“7” = Weekly

“14” = BiWeekly

“15” = Semi-Monthly

“30” = 30-day

“31” = Monthly

  frequencydescription 
  duedate 
  principal 
  sumofpayments 
  balanceatmaturityAmount that would be due on the due date if no payments were ever made.
  amountfinanced 
  financecharge 
  apr 
  fee1 
  fee2 
  fee3 
  fee4 
  fee5 
  fee6 
  fee7 
  fee8 
  fee9 
  fee10 
  agreeddateDate that the e-signature agreement was accepted
  agreedipIP address of the person who accepted the e-signature agreement
  agreedfirstFirst name of the person who accepted the e-signature agreement
  agreedlastLast Name of the person who accepted the e-signature agreement
  agreedssnSocial Security Number of the person who accepted the e-signature agreement
  guidUnique key to access the e-signature.
  paymentsRoot element for payments
    paymentRoot element for an individual payment
      date 
      amount 

 

 

 

 

 

lead

This allows you to enter new lead information into Intro XL.  The fields in blue are required for authentication.  The fields in orange are also required, but can be left empty.

 

File Attachments

Intro XL uses Amazon S3 as the repository for file attachments.  If you are set up with an S3 account, you can send file attachments to S3, and then provide Intro XL with the file name and the Key that was used in S3.  This will allow you to open file attachments inside of Intro XL.  A GUID is typically generated and used as a Key for each individual file, but you can use your own method for generating a unique Key for each file.

 

Automated E-Signatures

If you are set up to automatically generate an e-signature, the response will include the e-signature information.

 

Request Fields:

CompanyThe company abbreviation in Intro XL 
StoreidStore Number in Intro XL. 
PasswordLeads Password from Intro XL Store Settings 
StoreStore name.  Can be empty 
leadtypeUse “New” for new leads or “Reapply” for customers that are re-applying for a loan, or leave blank. 
GUIDKey for the Lead.  Can be left blank.  If blank, a GUID will be generated by Intro XL.  You can use this to reference the lead afterward.50
SourceWhere the lead is coming from.  The Lead “Source” is used by the rules engine in Intro XL to route new leads.50
FirstName 50
LastName 50
Email 100
Address 100
City 50
State 5
ZipCode 20
YearsAtAddress Suggested values:

LT1 = Less than 1 year

1 = 1 to 2 years

3 = 3 to 5 years

6 = 6 to 10 years

10 = more than 10 years

5
Rentertrue or false 
Phone 20
TimeReachable 10
DateOfBirth  
Citizentrue or false 
SSN 9
DLNoDrivers License No20
Militarytrue or false 
MilitaryDependanttrue or false 
BorrowAmount If no value, please send zero (0) 
PaycheckAmount  If no value, please send zero (0) 
DirectDeposittrue or false 
PayFrequency 7 = Weekly

14 = Bi-Weekly

15 = Semi-Monthly

31 = Monthly

5
Last_PaydayUse this field for the person’s Last Payday 
Next_PaydayUse this field for the person’s Next Payday 
IncomeType Suggested Values:

Employment

Government

50
Employer 50
EmployerAddress 100
EmployerCity 50
EmployerState  
EmployerZip 5
PositionEmployee’s Position50
YearsEmployed Suggested values:

LT1 = Less than 1 year

1 = 1 to 2 years

3 = 3 to 5 years

6 = 6 to 10 years

10 = more than 10 years

5
WorkPhone 20
BankName 50
ABARoutingNo 20
BankAccountNo 20
Checkingtrue for Checking and false for Savings 
YearswithBankAccount 5
ReferenceFirst 20
ReferenceLast 20
ReferencePhone 20
ReferenceRelationshipSuggested Values:

Mother

Father

Wife

Husband

Friend

Other

20
CellPhone 20
CallBackNumber 20
IP IP address of the potential customer20
Reference2First 20
Reference2Last 20
Reference2Phone 20
Reference2RelationshipSuggested Values:

Mother

Father

Wife

Husband

Friend

Other

20
Reference3First 20
Reference3Last 20
Reference3Phone 20
Reference3RelationshipSuggested Values:

Mother

Father

Wife

Husband

Friend

Other

20
TextingOptionWhether they have opted IN or OUT of receiving text messages.

Valid Values:

IN

OUT

 
MarketingTextingOptionWhether the have opted IN or OUT of Marketing text messages.

 

Valid values:

IN

OUT

 
DoNotSolicitValid Values:

true

false

 
OptionValuesExtra information about the lead.  If you are entering multiple items here, separate them by a Pipe Character (|).500
VehicleMake 20
VehicleModel 20
VehicleYear 20
VehicleBodyStyle 50
VehicleTransmission 10
VehicleMileage 10
VehicleColor 20
VehicleVIN 50
VehiclePlate 20
VehicleInsCompany 50
VehicleInsPolicyNo 20
VehicleInsPhone 20
VehicleTitle 50
AffiliateCodeSubID shoud go here100
DecisionLogicCodeDecision Logic Code10
ClarityTrackingCodeThe Clarity Tracking Code50
noteA note that will be inserted into the Lead’s Contact Log500
attachmentsRoot element for attachments list 
   attachmentRoot element for a single attachment 
      keyKey that was used to store the file in Amazon S3.  This is typically a GUID.50
      filenameName of file100

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<lead>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<Store></Store>

<leadtype>New</leadtype>

<GUID>2b3d7b3a-9720-4e4f-b5bf-489d664e51b5</GUID>

<Source>Web</Source>

<FirstName>Tom</FirstName>

<LastName>Tester</LastName>

<Email>test@test.com</Email>

<Address>123 Elm St</Address>

<City>Chicago</City>

<State>IL</State>

<ZipCode>60000</ZipCode>

<YearsAtAddress>LT1</YearsAtAddress>

<Renter>true</Renter>

<Phone>9991112222</Phone>

<TimeReachable>MORNING</TimeReachable>

<DateOfBirth>1/1/1980</DateOfBirth>

<Citizen>true</Citizen>

<SSN>999775555</SSN>

<DLNo>a123435676</DLNo>

<Military>false</Military>

<MilitaryDependant>false</MilitaryDependant>

<BorrowAmount>300</BorrowAmount>

<PaycheckAmount>1000</PaycheckAmount>

<DirectDeposit>false</DirectDeposit>

<PayFrequency>14</PayFrequency>

<Last_Payday>9/20/2011</Last_Payday>

<Next_Payday>10/4/2011</Next_Payday>

<IncomeType>Employment</IncomeType>

<Employer>Test Company</Employer>

<EmployerAddress>455 Test St</EmployerAddress>

<EmployerCity>Chicago</EmployerCity>

<EmployerState>IL</EmployerState>

<EmployerZip>60000</EmployerZip>

<Position>Tester</Position>

<YearsEmployed>3</YearsEmployed>

<WorkPhone>9991112226</WorkPhone>

<BankName>Test Bank</BankName>

<ABARoutingNo>911911911</ABARoutingNo>

<BankAccountNo>765765</BankAccountNo>

<Checking>true</Checking>

<YearswithBankAccount>2</YearswithBankAccount>

<ReferenceFirst>Meg</ReferenceFirst>

<ReferenceLast>Tester</ReferenceLast>

<ReferencePhone>9998887777</ReferencePhone>

<ReferenceRelationship>Mother</ReferenceRelationship>

<Reference2First>Amy</Reference2First>

<Reference2Last>Tester</Reference2Last>

<Reference2Phone>9998887777</Reference2Phone>

<Reference2Relationship>Wife</Reference2Relationship>

<Reference3First></Reference3First>

<Reference3Last></Reference3Last>

<Reference3Phone></Reference3Phone>

<Reference3Relationship></Reference3Relationship>

<CallBackNumber>9991112224</CallBackNumber>

<CellPhone>9991112223</CellPhone>

<IP>127.0.0.1</IP>

<OptionValues></OptionValues>

<VehicleMake></VehicleMake>

<VehicleModel></VehicleModel>

<VehicleYear></VehicleYear>

<VehicleBodyStyle></VehicleBodyStyle>

<VehicleTransmission></VehicleTransmission>

<VehicleMileage></VehicleMileage>

<VehicleColor></VehicleColor>

<VehicleVIN></VehicleVIN>

<VehiclePlate></VehiclePlate>

<VehicleInsCompany></VehicleInsCompany>

<VehicleInsPolicyNo></VehicleInsPolicyNo>

<VehicleInsPhone></VehicleInsPhone>

<VehicleTitle></VehicleTitle>

<AffiliateCode></AffiliateCode>

<DecisionLogicCode></DecisionLogicCode>

<ClarityTrackingCode></ClarityTrackingCode>

<note></note>

<attachments>

<attachment>

<key>63f86b96-db15-3071-b97f-cbbe6fb51522</key>

<filename>test.pdf</filename>

</attachment>

</attachments>

<esig>

<agreementdate>5/31/2013</agreementdate>

<loandate>5/31/2013</loandate>

<interestrate>399.00</interestrate>

<numberofpayments>12</numberofpayments>

<frequency>14</frequency>

<frequencydescription>biweekly</frequencydescription>

<duedate>11/11/2013</duedate>

<principal>500</principal>

<sumofpayments>1078.71</sumofpayments>

<balanceatmaturity>1396.38</balanceatmaturity>

<amountfinanced>500</amountfinanced>

<financecharge>578.71</financecharge>

<apr>397.9066</apr>

<fee1>8/1/2012</fee1>

<fee2>8/1/2012</fee2>

<fee3>8/1/2012</fee3>

<fee4>8/1/2012</fee4>

<fee5>8/1/2012</fee5>

<fee6>8/1/2012</fee6>

<fee7>8/1/2012</fee7>

<fee8>8/1/2012</fee8>

<fee9>8/1/2012</fee9>

<fee10>8/1/2012</fee10>

<payments>

<payment>

<date>6/10/2013</date>

<amount>89.90</amount>

</payment>

<payment>

<date>6/24/2013</date>

<amount>89.90</amount>

</payment>

<payment>

<date>7/8/2013</date>

<amount>89.90</amount>

</payment>

<payment>

<date>7/22/2013</date>

<amount>89.90</amount>

</payment>

<payment>

<date>8/5/2013</date>

<amount>89.90</amount>

</payment>

<payment>

<date>8/19/2013</date>

<amount>89.90</amount>

</payment>

<payment>

<date>9/2/2013</date>

<amount>89.90</amount>

</payment>

<payment>

<date>9/16/2013</date>

<amount>89.90</amount>

</payment>

<payment>

<date>9/30/2013</date>

<amount>89.90</amount>

</payment>

<payment>

<date>10/14/2013</date>

<amount>89.90</amount>

</payment>

<payment>

<date>10/28/2013</date>

<amount>89.90</amount>

</payment>

<payment>

<date>11/11/2013</date>

<amount>89.81</amount>

</payment>

</payments>

</esig>

<Decision>Approved</Decision>

<ReturnURL>https://test.com</ReturnURL >

<Statuscode>success</Statuscode>

<Description>Lead Inserted</Description>

</lead>

</introrequest>

 

 

Response Fields:

Statuscode“success” means that the lead was successfully received by Intro XL.
DescriptionReturn Description.  This will give more information if an error occurred.
Decision“Approved”, “Rejected”, or “None”.  “Approved” means that the lead has passed the rules engine.  If this lead is coming from a lead generator, then “Approved” means that the lead has been purchased.
ReturnURLThe URL to redirect the user to.
esigRoot element for the Esig data.  This will only be returned if you are set up to automatically generate an e-signature.
  agreementdate 
  loandate 
  Interestrate 
  numberofpayments 
  frequency“7” = Weekly

“14” = BiWeekly

“15” = Semi-Monthly

“30” = 30-day

“31” = Monthly

  frequencydescription 
  duedate 
  principal 
  sumofpayments 
  balanceatmaturityAmount that would be due on the due date if no payments were ever made.
  amountfinanced 
  financecharge 
  apr 
  fee1 
  fee2 
  fee3 
  fee4 
  fee5 
  fee6 
  fee7 
  fee8 
  fee9 
  fee10 
  guidUnique key to access the e-signature.
  paymentsRoot element for payments
    paymentRoot element for an individual payment
      date 
      amount 

 

 

 

 

latestloan

This returns loan data for the most recent confirmed loan for a given customer.  This is typically used to retrieve information for a person who had a loan in the past and wants to re-apply for a new loan.

 

Fields:

CompanyThe company abbreviation in Intro XL
StoreidThe store number in Intro XL
PasswordThe API Password
EmailThe UserID (email) of the customer for whom you want to get the loan info.

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<latestloan>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<Userid>test@test.com</Userid>

</latesloan>

</introrequest>

Response Fields:

Statuscode“success” means that the list of loans was successfully retrieved.
DescriptionDescription of request status.
loanRoot element for an individual loan
      FirstName 
      LastName 
      SSN 
      Address 
      City 
      State 
      ZipCode 
      Phone 
      BankName 
      BankAccountNo 
      ABARoutingNo 
      Email 
      DriversLicenseNo 
      DriversLicenseState 
      Employer 
      EmployerAddress 
      EmployerCity 
      EmployerState 
      EmployerZip 
      WorkPhone 
      LoanNumberIntro XL Loan Number assigned to the loan.
      AgreementDateDate the loan was created
      LoanDateEffective Date that the loan (may be after the agreement date.  The APR is based on this date.)
      InterestRate 
      APR 
      LoanAmountOriginal Principal Amount of the loan
      Frequency“7” = weekly, “14” = BiWeekly, “15” = Semi-Monthly, “30” = Every 30 days, “31” = Monthly.
      NumberOfPayments 
      DueDateMaturity Date
      PrincipalCurrent Principal Amount Remaining
      BalanceCurrent Balance At Maturity (The Current payoff, plus any interest that would accrue until the maturity date if no more payments are made)
      ClosedIs the loan paid off?  “True” or “False”
      ConfirmedWas the loan agreemend signed? “True” or “False”
      LoanFeeTotal prepaid fees that were added to the principal amount durning loan creation (Depreciated.  Use Fee1…Fee5 instead)
      OriginationFeeOrigination Fee added to the finance charge durning loan creation (Depreciated.  Use Fee1…Fee5 instead)
      OriginationFee2Second Origination Fee added to the finance charge durning loan creation (Depreciated.  Use Fee1…Fee5 instead)
      Fee1Amount of Fee 1 (Loan Type Settings in Intro XL)
      Fee2Amount of Fee 2 (Loan Type Settings in Intro XL)
      Fee3Amount of Fee 3 (Loan Type Settings in Intro XL)
      Fee4Amount of Fee 4 (Loan Type Settings in Intro XL)
      Fee5Amount of Fee 5 (Loan Type Settings in Intro XL)
      Fee6Amount of Fee 6 (Loan Type Settings in Intro XL)
      Fee7Amount of Fee 7 (Loan Type Settings in Intro XL)
      Fee8Amount of Fee 8 (Loan Type Settings in Intro XL)
      Fee9Amount of Fee 9 (Loan Type Settings in Intro XL)
      Fee10Amount of Fee 10 (Loan Type Settings in Intro XL)
      LastLoanNoIf this is a Refinance, the Intro XL Loan Number of the original loan.
      LastLoanPayoffIf this is a Refinance, the Payoff Amount of the original loan.  This is used for the Itemization on the agreement.
      SumOfPaymentsSum of Scheduled Payments.  Used for “Total Of Payments” in TILA section of agreement.
      FinanceChargeUsed for TILA section of agreement
      AmountFinancedUsed for TILA section of agreement
      VehicleVINFor Auto Title Loans
      VehiclePlateNoFor Auto Title Loans
      VehicleMileageFor Auto Title Loans
      VehicleStyleFor Auto Title Loans
      VehicleMakeFor Auto Title Loans
      VehicleModelFor Auto Title Loans
      VehicleYearFor Auto Title Loans
      LoanTypeLoan Type ID in Intro XL database
      ContractFileThe name of the web page that will display the agreement. (Ex. Agreement1.aspx)
      AgreedDate 
      AgreedFirstThe First Name they entered when  signing the agreement
      AgreedLastThe Last Name they entered when  signing the agreement
      AgreedIPIP Address that the user signed the agreement from
      AgreedSSNThe SSN  they entered when  signing the agreement
      PaymentsRoot element for Scheduled Payments Array
         PaymentRoot element for Scheduled Payment
            Number 
            Date 
            Amount 

 

 

 

 

 

loan

This returns loan data for a specific loan.

 

Fields:

CompanyThe company abbreviation in Intro XL
StoreidThe store number in Intro XL
PasswordThe API Password
GUIDThis is the GUID of the loan.

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<loan>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<GUID>b14c91f6-19d6-495c-916f-5b1a4f415aca</GUID>

</loan>

</introrequest>

Response Fields:

Statuscode“success” means that the list of loans was successfully retrieved.
DescriptionDescription of request status.
loanRoot element for an individual loan
      FirstName 
      LastName 
      SSN 
      Address 
      City 
      State 
      ZipCode 
      Phone 
      BankName 
      BankAccountNo 
      ABARoutingNo 
      Email 
      DriversLicenseNo 
      DriversLicenseState 
      DateOfBirth 
      Reference1 
      Reference1Phone 
      Reference2 
      Reference2Phone 
      Reference3 
      Reference3Phone 
      TextingOptedInYes or No
      MarketingTextingOptedInYes or No
      Employer 
      EmployerAddress 
      EmployerCity 
      EmployerState 
      EmployerZip 
      WorkPhone 
      LoanNumberIntro XL Loan Number assigned to the loan.
      AgreementDateDate the loan was created
      LoanDateEffective Date that the loan (may be after the agreement date.  The APR is based on this date.)
      InterestRate 
      APR 
      LoanAmountOriginal Principal Amount of the loan
      Frequency“7” = weekly, “14” = BiWeekly, “15” = Semi-Monthly, “30” = Every 30 days, “31” = Monthly.
      NumberOfPayments 
      DueDateMaturity Date
      PrincipalCurrent Principal Amount Remaining
      BalanceCurrent Balance At Maturity (The Current payoff, plus any interest that would accrue until the maturity date if no more payments are made)
      ClosedIs the loan paid off?  “True” or “False”
      ConfirmedWas the loan agreemend signed? “True” or “False”
      LoanFeeTotal prepaid fees that were added to the principal amount durning loan creation (Depreciated.  Use Fee1…Fee5 instead)
      OriginationFeeOrigination Fee added to the finance charge durning loan creation (Depreciated.  Use Fee1…Fee5 instead)
      OriginationFee2Second Origination Fee added to the finance charge durning loan creation (Depreciated.  Use Fee1…Fee5 instead)
      Fee1Amount of Fee 1 (Loan Type Settings in Intro XL)
      Fee2Amount of Fee 2 (Loan Type Settings in Intro XL)
      Fee3Amount of Fee 3 (Loan Type Settings in Intro XL)
      Fee4Amount of Fee 4 (Loan Type Settings in Intro XL)
      Fee5Amount of Fee 5 (Loan Type Settings in Intro XL)
      Fee6Amount of Fee 6 (Loan Type Settings in Intro XL)
      Fee7Amount of Fee 7 (Loan Type Settings in Intro XL)
      Fee8Amount of Fee 8 (Loan Type Settings in Intro XL)
      Fee9Amount of Fee 9 (Loan Type Settings in Intro XL)
      Fee10Amount of Fee 10 (Loan Type Settings in Intro XL)
      LastLoanNoIf this is a Refinance, the Intro XL Loan Number of the original loan.
      LastLoanPayoffIf this is a Refinance, the Payoff Amount of the original loan.  This is used for the Itemization on the agreement.
      SumOfPaymentsSum of Scheduled Payments.  Used for “Total Of Payments” in TILA section of agreement.
      FinanceChargeUsed for TILA section of agreement
      AmountFinancedUsed for TILA section of agreement
      VehicleVINFor Auto Title Loans
      VehiclePlateNoFor Auto Title Loans
      VehicleMileageFor Auto Title Loans
      VehicleStyleFor Auto Title Loans
      VehicleMakeFor Auto Title Loans
      VehicleModelFor Auto Title Loans
      VehicleYearFor Auto Title Loans
      LoanTypeLoan Type ID in Intro XL database
      ContractFileThe name of the web page that will display the agreement. (Ex. Agreement1.aspx)
      AgreedDate 
      AgreedFirstThe First Name they entered when  signing the agreement
      AgreedLastThe Last Name they entered when  signing the agreement
      AgreedIPIP Address that the user signed the agreement from
      AgreedSSNThe SSN  they entered when  signing the agreement
      PaymentsRoot element for Scheduled Payments Array
         PaymentRoot element for Scheduled Payment
            Number 
            Date 
            Amount 

 

 

 

loanbalance

This function retrieves the current principal balance and payoff amount of a loan.

 

Fields:

CompanyThe company abbreviation in Intro XL
StoreidThe store number in Intro XL
PasswordThe API Password
guidThis is the GUID of the loan.

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<loanbalance>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<guid>b14c91f6-19d6-495c-916f-5b1a4f415aca</guid>

</loanbalance>

</introrequest>

Response Fields:

Statuscode“ok” means that the loan was successfully confirmed in Intro XL.  “failed” means that the loan was not successfully confirmed in Intro XL.
DescriptionDescription.  This element will only appear if the Statuscode = “Failed”.
principalThe current principal balance.
payoffThe current loan payoff amount.

 

 

loanconfirmation

This function notifies Intro XL that the customer has accepted the loan agreement and that the loan should be marked as “Confirmed” in Intro XL.

 

Fields:

CompanyThe company abbreviation in Intro XL
StoreidThe store number in Intro XL
PasswordThe API Password
AgreedDateDate the agreement was signed
AgreedIPIP Address that the user signed the agreement from
AgreedFirstThe First Name they entered when  signing the agreement
AgreedLastThe Last Name they entered when  signing the agreement
AgreedSSNThe SSN  they entered when  signing the agreement
GUIDThis is the GUID of the loan.

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<loanconfirmation>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<AgreedDate>1/1/2013</AgreedDate>

<AgreedIP>192.168.1.1</AgreedIP>

<AgreedFirst>John</AgreedFirst>

<AgreedLast>Doe</AgreedLast>

<AgreedSSN>222-33-4444</AgreedSSN>

<GUID>b14c91f6-19d6-495c-916f-5b1a4f415aca</GUID>

</loanconfirmation>

</introrequest>

Response Fields:

Statuscode“ok” means that the loan was successfully confirmed in Intro XL.  “failed” means that the loan was not successfully confirmed in Intro XL.
DescriptionDescription.  This element will only appear if the Statuscode = “Failed”.

 

 

 

loanlistadmin

This generates a list of all active loans for all customers.  This is typically used to display a list of all loans to an Intro XL user (Admin).

 

Fields:

CompanyThe company abbreviation in Intro XL
StoreidThe store number in Intro XL
PasswordThe API Password

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<loanlistadmin>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

</loanlistadmin>

</introrequest>

Response Fields:

Statuscode“success” means that the list of loans was successfully retrieved.
DescriptionDescription.  This element will only appear if the Statuscode = “Failed”.
loansRoot element for list of loans
   loanRoot element for an individual loan
      loannumberIntro XL Loan Number assigned to the loan.
      loandateDate the loan was created.
      duedateThe maturity date of the loan
      LoanAmountPrincipal Amount of the loan
      borrowernameCustomer’s Name (Last, First)
      EmailCustomer’s email
      ContractFileThe name of the web page that will display the agreement. (Ex. Agreement1.aspx)
      GUIDThe unique ID for the loan.  This is used to reference the loan via the API

 

 

 

 

Loanlistunconfirmedadmin

This generates a list of all of today’s unconfirmed loans.  Loans created before today will not be returned.  This is typically used to display a list of all of today’s unconfirmed loans to an Intro XL user (Admin).

 

Fields:

CompanyThe company abbreviation in Intro XL
StoreidThe store number in Intro XL
PasswordThe API Password
EmailThe UserID (email) of the customer for whom you want to get the list of unconfirmed loans.

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<loanlistunconfirmedadmin>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<Email>test@test.com</Email>

</loanlistunconfirmedadmin>

</introrequest>

Response Fields:

Statuscode“success” means that the list of loans was successfully retrieved.
DescriptionDescription.  This element will only appear if the Statuscode = “Failed”.
loansRoot element for list of loans
   loanRoot element for an individual loan
      loannumberIntro XL Loan Number assigned to the loan.
      loandateDate the loan was created.
      duedateThe maturity date of the loan
      LoanAmountPrincipal Amount of the loan
      borrowernameCustomer’s Name (Last, First)
      EmailCustomer’s email
      ContractFileThe name of the web page that will display the agreement. (Ex. Agreement1.aspx)
      GUIDThe unique ID for the loan.  This is used to reference the loan via the API

 

 

 

loanlistunconfirmeduser

This generates a list of all of today’s unconfirmed loans for a given customer.  Loans created before today will not be returned.

 

Fields:

CompanyThe company abbreviation in Intro XL
StoreidThe store number in Intro XL
PasswordThe API Password
EmailThe UserID (email) of the customer for whom you want to get the list of unconfirmed loans.

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<loanlistunconfirmeduser>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<Email>test@test.com</Email>

</loanlistunconfirmeduser>

</introrequest>

Response Fields:

Statuscode“success” means that the list of loans was successfully retrieved.
DescriptionDescription.  This element will only appear if the Statuscode = “Failed”.
loansRoot element for list of loans
   loanRoot element for an individual loan
      loannumberIntro XL Loan Number assigned to the loan.
      loandateDate the loan was created.
      duedateThe maturity date of the loan
      LoanAmountPrincipal Amount of the loan
      borrowernameCustomer’s Name (Last, First)
      EmailCustomer’s email
      ContractFileThe name of the web page that will display the agreement. (Ex. Agreement1.aspx)
      GUIDThe unique ID for the loan.  This is used to reference the loan via the API

 

 

 

 

loanlistuser

This generates a list of all of the active loans for a given customer.

 

Fields:

CompanyThe company abbreviation in Intro XL
StoreidThe store number in Intro XL
PasswordThe API Password
EmailThe UserID (email) of the customer for whom you want to get the list of active loans.

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<loanlistuser>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<Email>test@test.com</Email>

</loanlistuser>

</introrequest>

Response Fields:

Statuscode“success” means that the list of loans was successfully retrieved.
DescriptionDescription.  This element will only appear if the Statuscode = “Failed”.
loansRoot element for list of loans
   loanRoot element for an individual loan
      loannumberIntro XL Loan Number assigned to the loan.
      loandateDate the loan was created.
      duedateThe maturity date of the loan
      LoanAmountPrincipal Amount of the loan
      borrowernameCustomer’s Name (Last, First)
      EmailCustomer’s email
      ContractFileThe name of the web page that will display the agreement. (Ex. Agreement1.aspx)
      GUIDThe unique ID for the loan.  This is used to reference the loan via the API

 

 

registereduser

This function checks to see if a user has registered.

 

Fields:

CompanyThe company abbreviation in Intro XL
StoreidThe store number in Intro XL
PasswordThe API Password
UseridThe customer’s userid, which is also their email address.   For Intro XL users, this is their Intro XL username.
userpassThe Customer’s new password.

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<registereduser>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<userid>test@test.com</userid>

</registereduser>

</introrequest>

Response Fields:

Statuscode“ok” means that the user has registered.  “failed” means that the user is not registered.
DescriptionDescription.  This element will only appear if the Statuscode = “Failed”.

 

 

 

checklast4

This function checks to see if the user has entered the correct last 4 digits of their Social Security Number.   It is intended to be used as a way to authenticate the user prior to registering them.  The customer’s email address is used to find them in the Intro XL database, so the email address must be on the customer’s profile in Intro XL beforehand.

 

Fields:

CompanyThe company abbreviation in Intro XL
StoreidThe store number in Intro XL
PasswordThe API Password
useridThe customer’s userid, which is also their email address.   For Intro XL users, this is their Intro XL username.
last4Last 4 digits of the customer’s Social Security Number

 

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<checklast4>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<userid>test@test.com</userid>

<last4>1234</last4>

</checklast4>

</introrequest>

Response Fields:

Statuscode“ok” means that the last 4 digits of the customer’s Social Security Number are correct.  “failed” means that the last 4 digits of the customer’s Social Security Number are incorrect
DescriptionDescription of the status code that was returned.

 

 

 

updatepassword

This function is used to reset a customer’s password.

 

Fields:

CompanyThe company abbreviation in Intro XL
StoreidThe store number in Intro XL
PasswordThe API Password
UseridThe customer’s userid, which is also their email address.   For Intro XL users, this is their Intro XL username.
userpassThe Customer’s new password.

 

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<updatepassword>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<userid>test@test.com</userid>

<userpass>xxxxxx</userpass>

</updatepassword>

</introrequest>

Response Fields:

Statuscode“ok” means that the user’s password has been changed successfully.  “failed” means that the users password was not changed successfully.
DescriptionDescription.  This element will only appear if the Statuscode = “Failed”.

 

 

 

solicitations

This function is used to notify Intro XL whether or not it is okay to solicit the user.

 

Fields:

CompanyThe company abbreviation in Intro XL
StoreidThe store number in Intro XL
PasswordThe API Password
UseridThe customer’s userid, which is also their email address.   For Intro XL users, this is their Intro XL username.
oktosolicitTrue or false

 

 

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<solicitations>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<userid>test@test.com</userid>

<oktosolicit>true</oktosolicit>

</solicitations>

</introrequest>

Response Fields:

Statuscode“ok” means that the user’s solicitation preference has been updated successfully.  “failed” means that the soliciatation preference was not updated successfully.
DescriptionDescription.  This element will only appear if the Statuscode = “Failed”.

 

 

 

 

GetConfirmationCode

This is a function that can be used during the registration process to generate a random 5 character confirmation code that the customer needs to enter to complete their registration process.   The random 5 character confirmation code is generated and sent back in the response, and an email and/or a text message containing the confirmation code is sent to the customer.   If “sendtext” and “sendemail” are both

 

Fields:

CompanyThe company abbreviation in Intro XL
StoreidThe store number in Intro XL
PasswordThe API Password
useridThe customer’s userid, which is also their email address.   For Intro XL users, this is their Intro XL username.
sendtextTrue or false.  Specifies whether or not to send the customer a text message with the confirmation code.
sendemailTrue or false.  Specifies whether or not to send the customer an email with the confirmation code.

 

Request XML:

<?xml version=’1.0′ encoding=’utf-8′?>

<introrequest>

<getconfirmationcode>

<Company>cmp</Company>

<Storeid>1</Storeid>

<Password>xxxxx</Password>

<userid>test@test.com</userid>

<sendtext>true</sendtext>

<sendemail>true</sendemail>

</getconfirmationcode>

</introrequest>

Response Fields:

Statuscode“ok” means that the last 4 digits of the customer’s Social Security Number are correct.  “failed” means that the last 4 digits of the customer’s Social Security Number are incorrect
DescriptionDescription of the status code that was returned.