In this short primer, we’ll introduce some of the features and functions of loan applications that we pay particular attention to from the point of view of a software tester. Primarily, there are main functions of loan application software:
Loan Application: The loan must be applied for by the applicant. In this process, loan application software must enable easy input of the required information needed to process the loan. Determining what information is needed depends on many factors including characteristics of the type of loan as well as the applicant profile.
Loan Approval: For the loan to be approved, the applicant must meet many criteria, some of which are dependent on many business rules.
Loan Processing: After a loan is approved there is a process to start up the loan, maintain the loan, and end the loan. This may include many steps and applied business rules along the way.
At XBOSoft, as many of you know, we have a credo when it comes to test automation. That is “You can’t automate what you don’t understand. We also apply this credo to our overall financial software testing practice where we absolutely demand that our staff be domain experts in the software they are testing. As for testing loan application software, we’ve worked with many subsets including mortgages, consumer, and commercial.
Below is an example for taking a personal loan.
The process of lending money to a customer for a loan application software begins with taking an application.
The purpose of this is to gather information about the borrower and/or spouse, and then use this information with required documents to develop a credit judgment and analysis. This includes:
1. General information
Besides the general information such as SSN, Name, Date of Birth etc, the information below are important:
Purpose: what loan they want to make
Source: whether or not they are former borrowers
Request Loan Amount
2. Employment history
Gather employment information such as Employer, Position, City Employed, Date Employed etc, and other important information such as Net Salary and/or Other Income.
3. Residence and automobiles
Residence information will vary depending on whether or not the user indicated the borrower rents, is buying, owns or lives with parents. Automobiles owned and balances on existing car loans will determine borrowers capability for more debt.
4. Other real estate and assets
Gather information for other real estate and assets owned by the borrower with description and value. This determines what the borrower could use as collateral for the loan.
Most loan application software requires that the user indicate their rent or mortgage debt. This sometimes can be automatically displayed by the system (pulled in from other data sources), and is associated with the applicant (A), spouse (S) or joint (J). The system should display an error message if the user fails to indicate who the debt belongs to.
The loan application system will score the loan application based on information above with business logic, and determine if the calculated score is too low to continue with the application.
As you can imagine, the business logic to determine the loan applicant’s score can be quite complex and involve many test cases. Any number of factors can cause the score to be below 600 upon which the applicant should be turned down. So testing involves ensuring that each factor impacts the score correctly, as well as making sure that the applicant’s approval or disapproval is correct.
Once the loan application is complete, the next step is to evaluate the loan. Here are the main checkpoints:
A Manager should be assigned a permanent personal credit limit that establishes the maximum loan amount the manager can approve without obtaining an additional approval from his or her supervisor.
If Applicant’s Credit Grade is Equal to or Above the Manager’s Credit Grade limit, additional Supervisor approval authorization is necessary.
A Manager can turn down a loan application for a certain of reasons, such as:
Insufficient Credit Reference
Delinquent Credit Obligations
Unable to verify Residence
As software testers, this is one of the most difficult parts in checking all the different loan evaluation scenarios. As you can imagine, it’s easy to make a mistake in evaluating a loan and approving it. So the scenarios below should also be considered when testing:
If a manager is attempting to approve a loan that exceeds their assigned credit approval limit, the system should display a message indicating that additional approval is necessary.
If a loan was approved by mistake, the system should allow a role (e.g. admin) to void the loan.
If a loan was voided by mistake, the system should allow a role for undoing a loan that was voided by mistake.
Other test scenarios include different combinations such as if an applicant’s credit grade is A which means he can borrow 10000, while the manager’s credit grade limit is B, which means he can approve max loan amount 5000. Thus, if A > B, this needs additional approval. We updated the application with new application info, and the credit score changed from A to B, which means no additional approval needed.
Once information is complete and the loan has been approved, the next step is to process the loan. This involves several steps:
1. Start up the loan
1.1. Set up a payment schedule
After the loan has been approved for a given loan amount, the system should calculate additional fees and enumerate insurance options, filing fees, etc. This information should be presented to the loan applicant along with the payment schedule based on specific business rules for Interest rate, Finance Charge, Maintenance, etc. For example, the interest rate that will apply and the amount of interest that will be charged are calculated based on the approved Loan amount and the repayment period. Repayment terms, such as Lending Period: 61 Days to 72 months along with payment options such as once to twice a month, combined with maximum APR varying by jurisdiction and regulations have a significant impact on the number of permutations and therefore test cases.
1.2. Impact of APR on loan application software testing
The loan application APR (Annual Percentage Rate) is highly impacted by the constant changes in government loan regulations, often dictated on a state by state basis. For example, one state may have a maximum APR regulation of 35.99%, while another may have 23.99%. Any changes to the state APR will impact all system calculations. So if the Loan application software is used in different states with different rules, it will involve thousands of dependencies. Dependencies in such business rules impact the testing process as it requires more time, resources, and continuous monitoring.
1.3. Set up a loan account
Once the application process is complete and the terms of the loan have been agreed upon (borrower signs loan contract), the next step is to set up the account to:
Review Applicant Information
Review Loan Information
Print Loan Documents
2. Maintain the loan
When customers accept the terms and conditions for a loan, they enter into a commitment to repay the amount they owe, according to the specific schedule outlined in their loan documents. After this, the loan goes into maintenance whereby there can be three different types of processes.
2.1. Payoff early
When a customer chooses to payoff their loan prior to the last payment date, law requires that certain charges (such as finance charges, insurance, etc.) be refunded to the customer.
The methods used to determine cost and refund of credit insurance and/or finance charges could vary by state according to the number of days the loan is paid in advance. Some states allow additional days interest to be calculated and owed beyond when the loan is paid off. For example, for the loan with terms less than < 60 months, the refund calculation method uses the Rule of 78 in Mississippi whichgives greater weight to months in the earlier part of a borrower’s loan thus increasing interest payments and is more beneficial for the lender.
On the other hand, the Accrual (actuarial) method is used in Illinois. The Accrual method is based on days whereby the unearned interest is refunded. When prepayment occurs, the lender retains 1/30 of the applicable interest for each day from the date of the loan to the date that prepayment occurs, and refunds the balance of the interest after prepayment date over the total term of payments.
As you can imagine, these rules and regulations result in more test cases as these calculations have to be verified for correctness.
2.2. Normal repayment
Accepting customer payments is an important functionality. The system must re-calculate the payment schedule to ensure the most up to date information is displayed. Re-calculation is often necessary as the data may have changed such as days to date of first payment. So depending on when the loan is started and when the first payment date is, the calculations would be different.
2.3. Payment overdue
Depending on the particular type of loan, state or regional regulations, and company policies, loans are classified into different categories according to the amount they are overdue. For example:
up to 30 days overdue,
31 to 60 days overdue,
61 to 90 days overdue,
91 to 120 days overdue,
121 to 150 days overdue,
more than 150 days overdue.
Depending on the number of days overdue, the software must take various actions. For example, sending an Account Past Due letter to a borrower whose account is past due to remind the user to reach out to the lenders/creditors early to discuss the situation. The amount listed on the letter should include the late charges owed at the time the letter is printed and other details according to regulations. Different letters according to the number of days overdue should be sent out accordingly.
3. End the loan
Once the account is paid off, the status of the account is changed to indicate the loan is completed. However, there are other ways to ‘end the loan’ or intermediate steps in that direction. These include:
An account which is past due more than 150 days could be identified as salvaged, status of the account is displayed as ‘S’. The loan company can continue to try to collect.
Once the loan company or lender has exhausted all collection options, the manager or supervisor will make the account “Inactive” and no further attempts to collect are made. An inactive account will continue to accrue finance charges and late fees up to the maturity date of the loan (in case the borrower ever pays it off in the future) but depending on the loan company’s accounting practices, this money may or may not be recognized as income if the loan is written off as bad debt.
Loan Software Testing
You may wonder what has all this got to do with software testing?
The functional testing of a loan application is quite different from ordinary software testing. It’s important to ensure that different modules of a loan application are integrated properly. For example, parameters changed in monthly payment for Creditors of the applicant will mean the applicant’s total balance for Creditors changed and affect many calculations downstream, such as Applicant’s Credit Score, Loan Amount, Payment Schedule, Monthly repayment amount.
Since these applications operate with an individual or company’s money and sensitive financial data, they are required to be tested thoroughly. No customer wants to pay more than they should and of course no loan company or lender wants to lose a penny of interest. Nor do they want to have to write off a loan unnecessarily. Therefore, all business scenarios need to be covered.
From a software quality assurance point of view, testing the loan application software requires a deep level of domain knowledge in finance and accounting in order to conduct thorough testing. To develop realistic test cases, we have to deeply understand both points of view, the lender and the lendee, and think deeply about how they will use the software and what functionality is critical to them.
If you’re a company or developer that needs regression testing performed, XBOSoft can help. Our team provides high-quality testing and quality assurance services designed to match your in-house software development needs.
With exceptionally deep expertise and a wide range of services, XBOSoft is ready to help you deliver incredible software. Learn more today.
Jimmy Florent is a results-driven leader with more than 16 years of experience in traditional and digital sales & marketing for multinational corporations. He has successfully built and implemented global strategies within consumer durables, retail, and service industries for companies like Black&Decker, Sony, Wickes, Tivoli China. Jimmy is able to bring together different teams in complex matrix structures to achieve common goals. He’s successfully led teams in China, UK, France while operating on a global platform (EMEA, APAC, China).